Ir para o conteúdo

Funções e retornos SDK em nove linguagens

Consulte funções públicas Launch, parâmetros, retornos e falhas por linguagem. Parâmetros opcionais e padrões seguem a versão correspondente do código.

Esta página descreve os adaptadores de conta Launch. Consulte a referência oficial para APIs Licentivo de autorização, medição e funcionamento offline.

Licentivo SDK · Referência de funções

O estado da sessão descreve apenas a conta; proteja cada execução de negócio.

O padrão é armazenamento em memória. Lembrar login exige armazenamento persistente protegido, separado do cache SDK.

Restaurar exige confirmação online. Launch nunca escolhe autorização offline por falha de rede; o SDK oficial verifica esses direitos.

Go

Código correspondente · v0.1.6 · application.go · runtime.go · client.go · store.go

Erros e falhas: 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)
Finalidade
Valida as configurações públicas e cria a aplicação, sem iniciar sessão nem autorizar funções protegidas.
Parâmetros
  • merchantOrigin / origin: Origem completa da loja com protocolo e porta necessária; use HTTPS em produção.
  • productID / product_id: Identificador de produto Launch, preenchido automaticamente pelo código de integração administrativo.
  • licentivoProductID / licentivo_product_id: Identificador do produto de licença Licentivo, correspondente à configuração pública de assinatura.
  • trustedKeys / trusted_keys: Mapa de identificadores de chave para chaves públicas que verificam permissões assinadas do SDK oficial.
  • environment: sandbox ou live; mantenha contas, produtos e caches no mesmo ambiente.
  • options / config: Opções de armazenamento, cache privado, cancelamento, tentativas ou componentes avançados.
Retorno
(*Application, error)

Retorna o objeto criado; inicialização não comprova autorização.

Application.Login
Login(ctx context.Context, email, password string) → (State, error)
Finalidade
Autentica a conta da loja, obtém uma declaração de identidade temporária e inicia o SDK oficial.
Parâmetros
  • ctx / ct / signal / cancellation: Contexto da requisição ou sinal de cancelamento; o contexto de ciclo Go controla também tarefas em segundo plano.
  • email, password: Email e senha da conta do cliente nesta loja; use a senha apenas neste login.
Retorno
(State, error)

Retorna o estado da conta; veja a tabela de campos abaixo.

Application.Restore
Restore(ctx context.Context) → (State, error)
Finalidade
Lê a sessão salva, confirma a conta online, obtém nova declaração e inicia o SDK oficial.
Parâmetros
  • ctx / ct / signal / cancellation: Contexto da requisição ou sinal de cancelamento; o contexto de ciclo Go controla também tarefas em segundo plano.
Retorno
(State, error)

Retorna o estado; ErrNoSession ou NO_SESSION indica ausência de sessão salva. Trate outros erros separadamente.

Application.RunFeature
RunFeature(feature string, action func() error) → error
Finalidade
O SDK oficial verifica cada execução e só executa o callback quando autorizado.
Parâmetros
  • feature / name, action / block: O nome da função deve corresponder à política; o callback contém o trabalho protegido real.
Retorno
error

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

Application.Logout
Logout(ctx context.Context) → error
Finalidade
Interrompe a autorização local, encerra a sessão do SDK oficial e revoga a sessão Launch. Preserva tarefas remotas pendentes para repetir.
Parâmetros
  • ctx / ct / signal / cancellation: Contexto da requisição ou sinal de cancelamento; o contexto de ciclo Go controla também tarefas em segundo plano.
Retorno
error

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

Application.ReleaseDevice
ReleaseDevice(ctx context.Context) → error
Finalidade
Entrada compatível de saída explícita, com o mesmo fluxo de conta e dispositivo de Logout.
Parâmetros
  • ctx / ct / signal / cancellation: Contexto da requisição ou sinal de cancelamento; o contexto de ciclo Go controla também tarefas em segundo plano.
Retorno
error

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

Application.Close
Close() → void
Finalidade
Interrompe esta instância e tarefas mantendo o login salvo e o vínculo do dispositivo.
Retorno
void

Sem retorno de negócio; fechamento normal não confirma saída da conta nem liberação do dispositivo.

APIs avançadas e de compatibilidade

NewApplication
NewApplication(config Config) → (*Application, error)
Finalidade
Valida as configurações públicas e cria a aplicação, sem iniciar sessão nem autorizar funções protegidas.
Parâmetros
  • options / config: Opções de armazenamento, cache privado, cancelamento, tentativas ou componentes avançados.
Retorno
(*Application, error)

Retorna o objeto criado; inicialização não comprova autorização.

NewApplicationFromFiles
NewApplicationFromFiles(launchPath, productPath string, options Config) → (*Application, error)
Finalidade
Lê duas configurações públicas existentes, verifica os produtos e cria a aplicação. A conexão direta dispensa arquivos.
Parâmetros
  • launchPath, productPath: Caminhos de configuração escolhidos ou diretório privado de cache e armazenamento do usuário atual.
  • options / config: Opções de armazenamento, cache privado, cancelamento, tentativas ou componentes avançados.
Retorno
(*Application, error)

Retorna o objeto criado; inicialização não comprova autorização.

LoadPublicConfig
LoadPublicConfig(path string) → (PublicConfig, error)
Finalidade
Valida ou lê configurações públicas; produtos, ambiente e chaves de assinatura devem corresponder.
Parâmetros
  • path: Caminhos de configuração escolhidos ou diretório privado de cache e armazenamento do usuário atual.
Retorno
(PublicConfig, error)

Retorna o tipo indicado na assinatura; o resultado não concede permissão de função.

NewRuntime
NewRuntime(product ProductConfig, runtime RuntimeConfig) → (Runtime, error)
Finalidade
Cria o adaptador SDK oficial para integrações avançadas; a declaração é transmitida apenas em memória.
Parâmetros
  • product, runtime: Objetos de configuração, runtime, transporte ou requisição, somente para integrações avançadas.
Retorno
(Runtime, error)

Retorna o objeto criado; inicialização não comprova autorização.

New
New(origin string, allowLocalHTTP bool) → (*Client, error)
Finalidade
Valida as configurações públicas e cria a aplicação, sem iniciar sessão nem autorizar funções protegidas.
Parâmetros
  • origin: Origem completa da loja com protocolo e porta necessária; use HTTPS em produção.
  • allowLocalHTTP: Opções de armazenamento, cache privado, cancelamento, tentativas ou componentes avançados.
Retorno
(*Client, error)

Retorna o objeto criado; inicialização não comprova autorização.

Client.WithToken
WithToken(token string) → *Client
Finalidade
Retorna uma cópia do cliente com o token informado, para servidores confiáveis.
Parâmetros
  • token: Token de sessão Launch, retornado somente por interfaces de sessão básicas ou armazenamento criptografado.
Retorno
*Client

Retorna o objeto criado; inicialização não comprova autorização.

Client.Login
Login(ctx context.Context, email, password string) → (User, error)
Finalidade
Autentica a conta e retorna dados ou sessão, sem iniciar o runtime de autorização.
Parâmetros
  • ctx / ct / signal / cancellation: Contexto da requisição ou sinal de cancelamento; o contexto de ciclo Go controla também tarefas em segundo plano.
  • email, password: Email e senha da conta do cliente nesta loja; use a senha apenas neste login.
Retorno
(User, error)

Retorna o estado da conta; veja a tabela de campos abaixo.

Client.LoginSession
LoginSession(ctx context.Context, email, password string) → (Session, error)
Finalidade
Autentica a conta e retorna dados ou sessão, sem iniciar o runtime de autorização.
Parâmetros
  • ctx / ct / signal / cancellation: Contexto da requisição ou sinal de cancelamento; o contexto de ciclo Go controla também tarefas em segundo plano.
  • email, password: Email e senha da conta do cliente nesta loja; use a senha apenas neste login.
Retorno
(Session, error)

Retorna o estado da conta; veja a tabela de campos abaixo.

Client.CurrentUser
CurrentUser(ctx context.Context) → (User, error)
Finalidade
Consulta a conta atual; sucesso não autoriza funções protegidas.
Parâmetros
  • ctx / ct / signal / cancellation: Contexto da requisição ou sinal de cancelamento; o contexto de ciclo Go controla também tarefas em segundo plano.
Retorno
(User, error)

Retorna o estado da conta; veja a tabela de campos abaixo.

Client.Identity
Identity(ctx context.Context, product, environment string) → (Identity, error)
Finalidade
Obtém declaração de identidade de uso único e contexto público, que não são licença nem permissão de função.
Parâmetros
  • ctx / ct / signal / cancellation: Contexto da requisição ou sinal de cancelamento; o contexto de ciclo Go controla também tarefas em segundo plano.
  • product: Identificador de produto Launch, preenchido automaticamente pelo código de integração administrativo.
  • environment: sandbox ou live; mantenha contas, produtos e caches no mesmo ambiente.
Retorno
(Identity, error)

Retorna o estado da conta; veja a tabela de campos abaixo.

Client.SignOut
SignOut(ctx context.Context) → error
Finalidade
Revoga a sessão Launch e apaga o token do cliente; não substitui a saída do dispositivo pelo SDK oficial.
Parâmetros
  • ctx / ct / signal / cancellation: Contexto da requisição ou sinal de cancelamento; o contexto de ciclo Go controla também tarefas em segundo plano.
Retorno
error

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

Client.Credential
Credential(ctx context.Context, product, environment string) → (Credential, error)
Finalidade
API antiga preservada: o protocolo de credenciais de licença permanente foi removido e as chamadas falham. Use Application.
Parâmetros
  • ctx / ct / signal / cancellation: Contexto da requisição ou sinal de cancelamento; o contexto de ciclo Go controla também tarefas em segundo plano.
  • product: Identificador de produto Launch, preenchido automaticamente pelo código de integração administrativo.
  • environment: sandbox ou live; mantenha contas, produtos e caches no mesmo ambiente.
Retorno
(Credential, error)

Sempre falha; migre para troca de identidade de conta.

Client.CredentialWithRetry
CredentialWithRetry(ctx context.Context, product, environment string, policy RetryPolicy) → (Credential, error)
Finalidade
API antiga preservada: o protocolo de credenciais de licença permanente foi removido e as chamadas falham. Use Application.
Parâmetros
  • ctx / ct / signal / cancellation: Contexto da requisição ou sinal de cancelamento; o contexto de ciclo Go controla também tarefas em segundo plano.
  • product: Identificador de produto Launch, preenchido automaticamente pelo código de integração administrativo.
  • environment: sandbox ou live; mantenha contas, produtos e caches no mesmo ambiente.
  • policy: Opções de armazenamento, cache privado, cancelamento, tentativas ou componentes avançados.
Retorno
(Credential, error)

Sempre falha; migre para troca de identidade de conta.

NewSystemSessionStore
NewSystemSessionStore(directory string) → (SessionStore, error)
Finalidade
Cria armazenamento persistente protegido; obtenha a chave no cofre de credenciais do sistema operacional.
Parâmetros
  • directory: Caminhos de configuração escolhidos ou diretório privado de cache e armazenamento do usuário atual.
Retorno
(SessionStore, error)

Retorna o objeto criado; inicialização não comprova autorização.

ProtectDirectory
ProtectDirectory(directory string) → error
Finalidade
Restringe o diretório ao usuário Windows atual ou a permissões privadas nas demais plataformas.
Parâmetros
  • directory: Caminhos de configuração escolhidos ou diretório privado de cache e armazenamento do usuário atual.
Retorno
error

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

ServiceUnavailable
ServiceUnavailable(err error) → bool
Finalidade
Identifica indisponibilidade temporária; isso nunca permite autorização offline.
Parâmetros
  • err: Cria ou lê erros estruturados para classificação, espera e diagnóstico correlacionado.
Retorno
bool

Retorna uma classificação booleana, não uma autorização.

APIError.Error / TransportError.Error
Error() → string
Finalidade
Cria ou lê erros estruturados para classificação, espera e diagnóstico correlacionado.
Retorno
string

Retorna o tipo indicado na assinatura; o resultado não concede permissão de função.

TransportError.Unwrap
Unwrap() → error
Finalidade
Cria ou lê erros estruturados para classificação, espera e diagnóstico correlacionado.
Retorno
error

Retorna o tipo indicado na assinatura; o resultado não concede permissão de função.

MemoryStore.Load / SessionStore.Load
Load(ctx context.Context, key string) → ([]byte, error)
Finalidade
Carrega a conta por chave isolada; o registro contém segredos exclusivos do SDK.
Parâmetros
  • scope / key, value / record: Chaves de isolamento e registros secretos SDK; armazenamento personalizado deve aceitar múltiplas chaves e substituição atômica.
Retorno
([]byte, error)

Retorna o registro secreto; ausência retorna valor vazio ou ErrNoSession conforme a linguagem.

MemoryStore.Save / SessionStore.Save
Save(ctx context.Context, key string, value []byte) → error
Finalidade
Salva atomicamente o registro da conta sob sua chave isolada.
Parâmetros
  • scope / key, value / record: Chaves de isolamento e registros secretos SDK; armazenamento personalizado deve aceitar múltiplas chaves e substituição atômica.
Retorno
error

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

MemoryStore.Delete / SessionStore.Delete
Delete(ctx context.Context, key string) → error
Finalidade
Exclui o registro da conta, preservando caches de autorização e diário de saída do SDK oficial.
Parâmetros
  • scope / key, value / record: Chaves de isolamento e registros secretos SDK; armazenamento personalizado deve aceitar múltiplas chaves e substituição atômica.
Retorno
error

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

Runtime.Start
Start(ctx context.Context, onError func(error)) → error
Finalidade
Inicia verificação e manutenção SDK oficial; login e proteção de funções usam APIs separadas.
Parâmetros
  • ctx / ct / signal / cancellation: Contexto da requisição ou sinal de cancelamento; o contexto de ciclo Go controla também tarefas em segundo plano.
  • onError: Cria ou lê erros estruturados para classificação, espera e diagnóstico correlacionado.
Retorno
error

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

Runtime.RunFeature
RunFeature(feature string, action func() error) → error
Finalidade
O SDK oficial verifica cada execução e só executa o callback quando autorizado.
Parâmetros
  • feature / name, action / block: O nome da função deve corresponder à política; o callback contém o trabalho protegido real.
Retorno
error

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

Runtime.Deactivate
Deactivate(ctx context.Context) → error
Finalidade
Encerra a sessão do dispositivo pelo SDK oficial; a aplicação revoga a sessão Launch separadamente.
Parâmetros
  • ctx / ct / signal / cancellation: Contexto da requisição ou sinal de cancelamento; o contexto de ciclo Go controla também tarefas em segundo plano.
Retorno
error

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

Runtime.Close
Close() → void
Finalidade
Interrompe esta instância e tarefas mantendo o login salvo e o vínculo do dispositivo.
Retorno
void

Sem retorno de negócio; fechamento normal não confirma saída da conta nem liberação do dispositivo.

Python

Código correspondente · v0.1.6 · client.py

Erros e falhas: 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
Finalidade
Valida as configurações públicas e cria a aplicação, sem iniciar sessão nem autorizar funções protegidas.
Parâmetros
  • merchantOrigin / origin: Origem completa da loja com protocolo e porta necessária; use HTTPS em produção.
  • productID / product_id: Identificador de produto Launch, preenchido automaticamente pelo código de integração administrativo.
  • licentivoProductID / licentivo_product_id: Identificador do produto de licença Licentivo, correspondente à configuração pública de assinatura.
  • trustedKeys / trusted_keys: Mapa de identificadores de chave para chaves públicas que verificam permissões assinadas do SDK oficial.
  • environment: sandbox ou live; mantenha contas, produtos e caches no mesmo ambiente.
  • options / config: Opções de armazenamento, cache privado, cancelamento, tentativas ou componentes avançados.
Retorno
Application

Retorna o objeto criado; inicialização não comprova autorização.

Application.login
login(email, password, *, pending_attempts=3) → Application (self)
Finalidade
Autentica a conta da loja, obtém uma declaração de identidade temporária e inicia o SDK oficial.
Parâmetros
  • email, password: Email e senha da conta do cliente nesta loja; use a senha apenas neste login.
  • pending_attempts: Opções de armazenamento, cache privado, cancelamento, tentativas ou componentes avançados.
Retorno
Application (self)

Retorna esta instância da aplicação, não dados da conta nem resultado de autorização.

Application.restore
restore() → bool
Finalidade
Lê a sessão salva, confirma a conta online, obtém nova declaração e inicia o SDK oficial.
Retorno
bool

true indica restauração; false indica ausência de sessão restaurável. Negação, expiração e falha de rede geram erros.

Application.run_feature
run_feature(name, action) → T
Finalidade
O SDK oficial verifica cada execução e só executa o callback quando autorizado.
Parâmetros
  • feature / name, action / block: O nome da função deve corresponder à política; o callback contém o trabalho protegido real.
Retorno
T

Retorna o resultado do callback de negócio; falhas de autorização e exceções geram erros.

Application.logout
logout() → bool
Finalidade
Interrompe a autorização local, encerra a sessão do SDK oficial e revoga a sessão Launch. Preserva tarefas remotas pendentes para repetir.
Retorno
bool

true confirma a saída; false indica saída remota ou revogação de dispositivo pendente. Falhas de armazenamento também podem gerar erros.

Application.release_device
release_device() → bool
Finalidade
Entrada compatível de saída explícita, com o mesmo fluxo de conta e dispositivo de Logout.
Retorno
bool

true confirma a saída; false indica saída remota ou revogação de dispositivo pendente. Falhas de armazenamento também podem gerar erros.

Application.close
close() → None
Finalidade
Interrompe esta instância e tarefas mantendo o login salvo e o vínculo do dispositivo.
Retorno
None

Sem retorno de negócio; fechamento normal não confirma saída da conta nem liberação do dispositivo.

Application.__enter__ / __exit__
with Application.connect(...) as app: ... → Application / None
Finalidade
Interrompe esta instância e tarefas mantendo o login salvo e o vínculo do dispositivo.
Retorno
Application / None

Sem retorno de negócio; fechamento normal não confirma saída da conta nem liberação do dispositivo.

APIs avançadas e de compatibilidade

Application.__init__
Application(origin, product_id, product_config, environment="live", store=None, runtime_factory=None, cache_dir=None, sleep=time.sleep, opener=None) → Application
Finalidade
Valida as configurações públicas e cria a aplicação, sem iniciar sessão nem autorizar funções protegidas.
Parâmetros
  • origin: Origem completa da loja com protocolo e porta necessária; use HTTPS em produção.
  • product_id: Identificador de produto Launch, preenchido automaticamente pelo código de integração administrativo.
  • product_config: Objetos de configuração, runtime, transporte ou requisição, somente para integrações avançadas.
  • environment: sandbox ou live; mantenha contas, produtos e caches no mesmo ambiente.
  • options / config: Opções de armazenamento, cache privado, cancelamento, tentativas ou componentes avançados.
Retorno
Application

Retorna o objeto criado; inicialização não comprova autorização.

Application.from_files
Application.from_files(launch_config, product_config, **kwargs) → Application
Finalidade
Lê duas configurações públicas existentes, verifica os produtos e cria a aplicação. A conexão direta dispensa arquivos.
Parâmetros
  • launch_config, product_config: Caminhos de configuração escolhidos ou diretório privado de cache e armazenamento do usuário atual.
  • options / config: Opções de armazenamento, cache privado, cancelamento, tentativas ou componentes avançados.
Retorno
Application

Retorna o objeto criado; inicialização não comprova autorização.

MemoryStore
MemoryStore() → MemoryStore
Finalidade
Cria armazenamento de sessão válido somente neste processo.
Retorno
MemoryStore

Retorna o objeto criado; inicialização não comprova autorização.

WindowsDPAPIStore
WindowsDPAPIStore(directory=None) → WindowsDPAPIStore
Finalidade
Cria armazenamento persistente protegido; obtenha a chave no cofre de credenciais do sistema operacional.
Parâmetros
  • directory: Caminhos de configuração escolhidos ou diretório privado de cache e armazenamento do usuário atual.
Retorno
WindowsDPAPIStore

Retorna o objeto criado; inicialização não comprova autorização.

APIError
APIError(code, status=0, retry_after=0) → APIError
Finalidade
Cria ou lê erros estruturados para classificação, espera e diagnóstico correlacionado.
Parâmetros
  • code, status, retry_after: Cria ou lê erros estruturados para classificação, espera e diagnóstico correlacionado.
Retorno
APIError

Retorna o tipo indicado na assinatura; o resultado não concede permissão de função.

MemoryStore.load / WindowsDPAPIStore.load
load(key) → bytes | None
Finalidade
Carrega a conta por chave isolada; o registro contém segredos exclusivos do SDK.
Parâmetros
  • scope / key, value / record: Chaves de isolamento e registros secretos SDK; armazenamento personalizado deve aceitar múltiplas chaves e substituição atômica.
Retorno
bytes | None

Retorna o registro secreto; ausência retorna valor vazio ou ErrNoSession conforme a linguagem.

MemoryStore.save / WindowsDPAPIStore.save
save(key, value) → None
Finalidade
Salva atomicamente o registro da conta sob sua chave isolada.
Parâmetros
  • scope / key, value / record: Chaves de isolamento e registros secretos SDK; armazenamento personalizado deve aceitar múltiplas chaves e substituição atômica.
Retorno
None

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

MemoryStore.delete / WindowsDPAPIStore.delete
delete(key) → None
Finalidade
Exclui o registro da conta, preservando caches de autorização e diário de saída do SDK oficial.
Parâmetros
  • scope / key, value / record: Chaves de isolamento e registros secretos SDK; armazenamento personalizado deve aceitar múltiplas chaves e substituição atômica.
Retorno
None

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

C#

Código correspondente · v0.1.6 · Application.cs · SessionStore.cs

Erros e falhas: 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
Finalidade
Valida as configurações públicas e cria a aplicação, sem iniciar sessão nem autorizar funções protegidas.
Parâmetros
  • merchantOrigin / origin: Origem completa da loja com protocolo e porta necessária; use HTTPS em produção.
  • productID / product_id: Identificador de produto Launch, preenchido automaticamente pelo código de integração administrativo.
  • licentivoProductID / licentivo_product_id: Identificador do produto de licença Licentivo, correspondente à configuração pública de assinatura.
  • trustedKeys / trusted_keys: Mapa de identificadores de chave para chaves públicas que verificam permissões assinadas do SDK oficial.
  • environment: sandbox ou live; mantenha contas, produtos e caches no mesmo ambiente.
  • store, cacheDirectory: Opções de armazenamento, cache privado, cancelamento, tentativas ou componentes avançados.
Retorno
Application

Retorna o objeto criado; inicialização não comprova autorização.

Application.Login
Login(string email, string password, int pendingAttempts=3, CancellationToken ct=default) → Task
Finalidade
Autentica a conta da loja, obtém uma declaração de identidade temporária e inicia o SDK oficial.
Parâmetros
  • email, password: Email e senha da conta do cliente nesta loja; use a senha apenas neste login.
  • pendingAttempts: Opções de armazenamento, cache privado, cancelamento, tentativas ou componentes avançados.
  • ctx / ct / signal / cancellation: Contexto da requisição ou sinal de cancelamento; o contexto de ciclo Go controla também tarefas em segundo plano.
Retorno
Task

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

Application.Restore
Restore(CancellationToken ct=default) → Task<bool>
Finalidade
Lê a sessão salva, confirma a conta online, obtém nova declaração e inicia o SDK oficial.
Parâmetros
  • ctx / ct / signal / cancellation: Contexto da requisição ou sinal de cancelamento; o contexto de ciclo Go controla também tarefas em segundo plano.
Retorno
Task<bool>

true indica restauração; false indica ausência de sessão restaurável. Negação, expiração e falha de rede geram erros.

Application.RunFeature
RunFeature(string feature, Func<Task> action) → Task
Finalidade
O SDK oficial verifica cada execução e só executa o callback quando autorizado.
Parâmetros
  • feature / name, action / block: O nome da função deve corresponder à política; o callback contém o trabalho protegido real.
Retorno
Task

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

Application.Status
Status() → AuthorizationStatus? (null: runtime absent)
Finalidade
Lê o estado de autorização do SDK oficial; não autentica nem substitui a verificação de cada função.
Retorno
AuthorizationStatus? (null: runtime absent)

Lê o estado de autorização do SDK oficial; não autentica nem substitui a verificação de cada função.

Application.Logout
Logout(CancellationToken ct=default) → Task
Finalidade
Interrompe a autorização local, encerra a sessão do SDK oficial e revoga a sessão Launch. Preserva tarefas remotas pendentes para repetir.
Parâmetros
  • ctx / ct / signal / cancellation: Contexto da requisição ou sinal de cancelamento; o contexto de ciclo Go controla também tarefas em segundo plano.
Retorno
Task

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

Application.ReleaseDevice
ReleaseDevice(CancellationToken ct=default) → Task
Finalidade
Entrada compatível de saída explícita, com o mesmo fluxo de conta e dispositivo de Logout.
Parâmetros
  • ctx / ct / signal / cancellation: Contexto da requisição ou sinal de cancelamento; o contexto de ciclo Go controla também tarefas em segundo plano.
Retorno
Task

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

Application.DisposeAsync
DisposeAsync() → ValueTask
Finalidade
Interrompe esta instância e tarefas mantendo o login salvo e o vínculo do dispositivo.
Retorno
ValueTask

Sem retorno de negócio; fechamento normal não confirma saída da conta nem liberação do dispositivo.

APIs avançadas e de compatibilidade

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
Finalidade
Valida as configurações públicas e cria a aplicação, sem iniciar sessão nem autorizar funções protegidas.
Parâmetros
  • origin: Origem completa da loja com protocolo e porta necessária; use HTTPS em produção.
  • productId: Identificador de produto Launch, preenchido automaticamente pelo código de integração administrativo.
  • productConfig: Objetos de configuração, runtime, transporte ou requisição, somente para integrações avançadas.
  • environment: sandbox ou live; mantenha contas, produtos e caches no mesmo ambiente.
  • options / config: Opções de armazenamento, cache privado, cancelamento, tentativas ou componentes avançados.
Retorno
Application

Retorna o objeto criado; inicialização não comprova autorização.

Application.FromFiles
Application.FromFiles(string launchPath, string productPath, ISessionStore? store=null) → Application
Finalidade
Lê duas configurações públicas existentes, verifica os produtos e cria a aplicação. A conexão direta dispensa arquivos.
Parâmetros
  • launchPath, productPath: Caminhos de configuração escolhidos ou diretório privado de cache e armazenamento do usuário atual.
  • store: Opções de armazenamento, cache privado, cancelamento, tentativas ou componentes avançados.
Retorno
Application

Retorna o objeto criado; inicialização não comprova autorização.

MemoryStore
new MemoryStore() → MemoryStore
Finalidade
Cria armazenamento de sessão válido somente neste processo.
Retorno
MemoryStore

Retorna o objeto criado; inicialização não comprova autorização.

WindowsDPAPIStore
new WindowsDPAPIStore(string? directory=null) → WindowsDPAPIStore
Finalidade
Cria armazenamento persistente protegido; obtenha a chave no cofre de credenciais do sistema operacional.
Parâmetros
  • directory: Caminhos de configuração escolhidos ou diretório privado de cache e armazenamento do usuário atual.
Retorno
WindowsDPAPIStore

Retorna o objeto criado; inicialização não comprova autorização.

LaunchException
new LaunchException(string code, int status=0, int retryAfterSeconds=0) → LaunchException
Finalidade
Cria ou lê erros estruturados para classificação, espera e diagnóstico correlacionado.
Parâmetros
  • code, status, retryAfterSeconds: Cria ou lê erros estruturados para classificação, espera e diagnóstico correlacionado.
Retorno
LaunchException

Retorna o tipo indicado na assinatura; o resultado não concede permissão de função.

ISessionStore.Load / MemoryStore.Load / WindowsDPAPIStore.Load
Load(string key) → byte[]?
Finalidade
Carrega a conta por chave isolada; o registro contém segredos exclusivos do SDK.
Parâmetros
  • scope / key, value / record: Chaves de isolamento e registros secretos SDK; armazenamento personalizado deve aceitar múltiplas chaves e substituição atômica.
Retorno
byte[]?

Retorna o registro secreto; ausência retorna valor vazio ou ErrNoSession conforme a linguagem.

ISessionStore.Save / MemoryStore.Save / WindowsDPAPIStore.Save
Save(string key, byte[] value) → void
Finalidade
Salva atomicamente o registro da conta sob sua chave isolada.
Parâmetros
  • scope / key, value / record: Chaves de isolamento e registros secretos SDK; armazenamento personalizado deve aceitar múltiplas chaves e substituição atômica.
Retorno
void

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

ISessionStore.Delete / MemoryStore.Delete / WindowsDPAPIStore.Delete
Delete(string key) → void
Finalidade
Exclui o registro da conta, preservando caches de autorização e diário de saída do SDK oficial.
Parâmetros
  • scope / key, value / record: Chaves de isolamento e registros secretos SDK; armazenamento personalizado deve aceitar múltiplas chaves e substituição atômica.
Retorno
void

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

IRuntime.Start
Start(CancellationToken ct) → Task
Finalidade
Inicia verificação e manutenção SDK oficial; login e proteção de funções usam APIs separadas.
Parâmetros
  • ctx / ct / signal / cancellation: Contexto da requisição ou sinal de cancelamento; o contexto de ciclo Go controla também tarefas em segundo plano.
Retorno
Task

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

IRuntime.Status
Status() → AuthorizationStatus
Finalidade
Lê o estado de autorização do SDK oficial; não autentica nem substitui a verificação de cada função.
Retorno
AuthorizationStatus

Lê o estado de autorização do SDK oficial; não autentica nem substitui a verificação de cada função.

IRuntime.RunFeature
RunFeature(string feature, Func<Task> action) → Task
Finalidade
O SDK oficial verifica cada execução e só executa o callback quando autorizado.
Parâmetros
  • feature / name, action / block: O nome da função deve corresponder à política; o callback contém o trabalho protegido real.
Retorno
Task

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

IRuntime.Deactivate
Deactivate(CancellationToken ct) → Task
Finalidade
Encerra a sessão do dispositivo pelo SDK oficial; a aplicação revoga a sessão Launch separadamente.
Parâmetros
  • ctx / ct / signal / cancellation: Contexto da requisição ou sinal de cancelamento; o contexto de ciclo Go controla também tarefas em segundo plano.
Retorno
Task

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

IRuntime.DisposeAsync
DisposeAsync() → ValueTask
Finalidade
Interrompe esta instância e tarefas mantendo o login salvo e o vínculo do dispositivo.
Retorno
ValueTask

Sem retorno de negócio; fechamento normal não confirma saída da conta nem liberação do dispositivo.

Java

Código correspondente · v0.1.6 · Launch.java · EncryptedFileStore.java

Erros e falhas: 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
Finalidade
Valida as configurações públicas e cria a aplicação, sem iniciar sessão nem autorizar funções protegidas.
Parâmetros
  • merchantOrigin / origin: Origem completa da loja com protocolo e porta necessária; use HTTPS em produção.
  • productID / product_id: Identificador de produto Launch, preenchido automaticamente pelo código de integração administrativo.
  • licentivoProductID / licentivo_product_id: Identificador do produto de licença Licentivo, correspondente à configuração pública de assinatura.
  • trustedKeys / trusted_keys: Mapa de identificadores de chave para chaves públicas que verificam permissões assinadas do SDK oficial.
  • environment: sandbox ou live; mantenha contas, produtos e caches no mesmo ambiente.
Retorno
Launch

Retorna o objeto criado; inicialização não comprova autorização.

Launch.login
login(String email, char[] password) → State
Finalidade
Autentica a conta da loja, obtém uma declaração de identidade temporária e inicia o SDK oficial.
Parâmetros
  • email, password: Email e senha da conta do cliente nesta loja; use a senha apenas neste login.
Retorno
State

Retorna o estado da conta; veja a tabela de campos abaixo.

Launch.restore
restore() → State
Finalidade
Lê a sessão salva, confirma a conta online, obtém nova declaração e inicia o SDK oficial.
Retorno
State

Retorna o estado; ErrNoSession ou NO_SESSION indica ausência de sessão salva. Trate outros erros separadamente.

Launch.runFeature
runFeature(String feature, Client.FeatureAction action) → void
Finalidade
O SDK oficial verifica cada execução e só executa o callback quando autorizado.
Parâmetros
  • feature / name, action / block: O nome da função deve corresponder à política; o callback contém o trabalho protegido real.
Retorno
void

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

Launch.logout
logout() → void
Finalidade
Interrompe a autorização local, encerra a sessão do SDK oficial e revoga a sessão Launch. Preserva tarefas remotas pendentes para repetir.
Retorno
void

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

Launch.releaseDevice
releaseDevice() → void
Finalidade
Entrada compatível de saída explícita, com o mesmo fluxo de conta e dispositivo de Logout.
Retorno
void

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

Launch.close
close() → void
Finalidade
Interrompe esta instância e tarefas mantendo o login salvo e o vínculo do dispositivo.
Retorno
void

Sem retorno de negócio; fechamento normal não confirma saída da conta nem liberação do dispositivo.

APIs avançadas e de compatibilidade

Launch
new Launch(Config config, Map<String,Object> product, Path cacheRoot [, Store store, Transport transport, RuntimeFactory factory, Sleeper sleeper]) → Launch
Finalidade
Valida as configurações públicas e cria a aplicação, sem iniciar sessão nem autorizar funções protegidas.
Parâmetros
  • config, product: Objetos de configuração, runtime, transporte ou requisição, somente para integrações avançadas.
  • cacheRoot: Caminhos de configuração escolhidos ou diretório privado de cache e armazenamento do usuário atual.
  • store, transport, factory, sleeper: Opções de armazenamento, cache privado, cancelamento, tentativas ou componentes avançados.
Retorno
Launch

Retorna o objeto criado; inicialização não comprova autorização.

Launch.Config
new Launch.Config(String merchantOrigin, String launchProductID, String licentivoProductID, String environment) → Config
Finalidade
Valida ou lê configurações públicas; produtos, ambiente e chaves de assinatura devem corresponder.
Parâmetros
  • merchantOrigin / origin: Origem completa da loja com protocolo e porta necessária; use HTTPS em produção.
  • productID / product_id: Identificador de produto Launch, preenchido automaticamente pelo código de integração administrativo.
  • licentivoProductID / licentivo_product_id: Identificador do produto de licença Licentivo, correspondente à configuração pública de assinatura.
  • environment: sandbox ou live; mantenha contas, produtos e caches no mesmo ambiente.
Retorno
Config

Retorna o tipo indicado na assinatura; o resultado não concede permissão de função.

Launch.Config.load
Launch.Config.load(Path path) → Config
Finalidade
Valida ou lê configurações públicas; produtos, ambiente e chaves de assinatura devem corresponder.
Parâmetros
  • path: Caminhos de configuração escolhidos ou diretório privado de cache e armazenamento do usuário atual.
Retorno
Config

Retorna o tipo indicado na assinatura; o resultado não concede permissão de função.

Launch.readPublic
Launch.readPublic(Path path) → Map<String,Object>
Finalidade
Valida ou lê configurações públicas; produtos, ambiente e chaves de assinatura devem corresponder.
Parâmetros
  • path: Caminhos de configuração escolhidos ou diretório privado de cache e armazenamento do usuário atual.
Retorno
Map<String,Object>

Retorna o tipo indicado na assinatura; o resultado não concede permissão de função.

Launch.MemoryStore
new Launch.MemoryStore() → MemoryStore
Finalidade
Cria armazenamento de sessão válido somente neste processo.
Retorno
MemoryStore

Retorna o objeto criado; inicialização não comprova autorização.

EncryptedFileStore
new EncryptedFileStore(Path directory, SecretKey vaultKey) → EncryptedFileStore
Finalidade
Cria armazenamento persistente protegido; obtenha a chave no cofre de credenciais do sistema operacional.
Parâmetros
  • directory: Caminhos de configuração escolhidos ou diretório privado de cache e armazenamento do usuário atual.
  • vaultKey: Chave de criptografia do cofre do sistema; nunca armazene junto dos registros criptografados.
Retorno
EncryptedFileStore

Retorna o objeto criado; inicialização não comprova autorização.

Launch.HTTPTransport.request
request(String method, URI uri, String bearer, byte[] body) → Response
Finalidade
Envia requisições HTTP da conta e retorna status, cabeçalhos ou corpo bruto, sem decidir autorização.
Parâmetros
  • method, uri, bearer, body: Objetos de configuração, runtime, transporte ou requisição, somente para integrações avançadas.
Retorno
Response

Retorna o tipo indicado na assinatura; o resultado não concede permissão de função.

Launch.Failure
new Launch.Failure(String code [, int status, String requestID, long retryAfterMillis, boolean transport]) → Failure
Finalidade
Cria ou lê erros estruturados para classificação, espera e diagnóstico correlacionado.
Parâmetros
  • code, status, requestID, retryAfterMillis, transport: Cria ou lê erros estruturados para classificação, espera e diagnóstico correlacionado.
Retorno
Failure

Retorna o tipo indicado na assinatura; o resultado não concede permissão de função.

Launch.Failure.unavailable
unavailable() → boolean
Finalidade
Identifica indisponibilidade temporária; isso nunca permite autorização offline.
Retorno
boolean

Retorna uma classificação booleana, não uma autorização.

Store.load / MemoryStore.load / EncryptedFileStore.load
load(String scope) → byte[] | null
Finalidade
Carrega a conta por chave isolada; o registro contém segredos exclusivos do SDK.
Parâmetros
  • scope / key, value / record: Chaves de isolamento e registros secretos SDK; armazenamento personalizado deve aceitar múltiplas chaves e substituição atômica.
Retorno
byte[] | null

Retorna o registro secreto; ausência retorna valor vazio ou ErrNoSession conforme a linguagem.

Store.save / MemoryStore.save / EncryptedFileStore.save
save(String scope, byte[] secret) → void
Finalidade
Salva atomicamente o registro da conta sob sua chave isolada.
Parâmetros
  • scope / key, value / record: Chaves de isolamento e registros secretos SDK; armazenamento personalizado deve aceitar múltiplas chaves e substituição atômica.
Retorno
void

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

Store.delete / MemoryStore.delete / EncryptedFileStore.delete
delete(String scope) → void
Finalidade
Exclui o registro da conta, preservando caches de autorização e diário de saída do SDK oficial.
Parâmetros
  • scope / key, value / record: Chaves de isolamento e registros secretos SDK; armazenamento personalizado deve aceitar múltiplas chaves e substituição atômica.
Retorno
void

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

Runtime.canStartOffline
canStartOffline() → boolean
Finalidade
Lê o estado de autorização do SDK oficial; não autentica nem substitui a verificação de cada função.
Retorno
boolean

Retorna uma classificação booleana, não uma autorização.

Runtime.start
start() → void
Finalidade
Inicia verificação e manutenção SDK oficial; login e proteção de funções usam APIs separadas.
Retorno
void

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

Runtime.runFeature
runFeature(String feature, Client.FeatureAction action) → void
Finalidade
O SDK oficial verifica cada execução e só executa o callback quando autorizado.
Parâmetros
  • feature / name, action / block: O nome da função deve corresponder à política; o callback contém o trabalho protegido real.
Retorno
void

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

Runtime.releaseDevice
releaseDevice() → void
Finalidade
Encerra a sessão do dispositivo pelo SDK oficial; a aplicação revoga a sessão Launch separadamente.
Retorno
void

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

Runtime.close
close() → void
Finalidade
Interrompe esta instância e tarefas mantendo o login salvo e o vínculo do dispositivo.
Retorno
void

Sem retorno de negócio; fechamento normal não confirma saída da conta nem liberação do dispositivo.

RuntimeFactory.create
create(Map<String,Object> settings) → Runtime
Finalidade
Cria o adaptador SDK oficial para integrações avançadas; a declaração é transmitida apenas em memória.
Parâmetros
  • settings: Objetos de configuração, runtime, transporte ou requisição, somente para integrações avançadas.
Retorno
Runtime

Retorna o objeto criado; inicialização não comprova autorização.

Sleeper.sleep
sleep(long milliseconds) → void
Finalidade
Aguarda a duração indicada para agendar tentativas avançadas.
Parâmetros
  • milliseconds: Espera recomendada para repetir; diferencie segundos, milissegundos e Duration conforme a linguagem.
Retorno
void

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

JavaScript / TypeScript

Código correspondente · v0.1.6 · index.d.ts · index.mjs

Erros e falhas: await Promise; catch (error); LaunchError(code, status, retryAfterSeconds)

Application.connect
Application.connect(merchantOrigin, productID, licentivoProductID, trustedKeys, options?) → Application
Finalidade
Valida as configurações públicas e cria a aplicação, sem iniciar sessão nem autorizar funções protegidas.
Parâmetros
  • merchantOrigin / origin: Origem completa da loja com protocolo e porta necessária; use HTTPS em produção.
  • productID / product_id: Identificador de produto Launch, preenchido automaticamente pelo código de integração administrativo.
  • licentivoProductID / licentivo_product_id: Identificador do produto de licença Licentivo, correspondente à configuração pública de assinatura.
  • trustedKeys / trusted_keys: Mapa de identificadores de chave para chaves públicas que verificam permissões assinadas do SDK oficial.
  • environment: sandbox ou live; mantenha contas, produtos e caches no mesmo ambiente.
  • options / config: Opções de armazenamento, cache privado, cancelamento, tentativas ou componentes avançados.
Retorno
Application

Retorna o objeto criado; inicialização não comprova autorização.

Application.login
login(email: string, password: string, options?: {signal?: AbortSignal}) → Promise<SessionState>
Finalidade
Autentica a conta da loja, obtém uma declaração de identidade temporária e inicia o SDK oficial.
Parâmetros
  • email, password: Email e senha da conta do cliente nesta loja; use a senha apenas neste login.
  • ctx / ct / signal / cancellation: Contexto da requisição ou sinal de cancelamento; o contexto de ciclo Go controla também tarefas em segundo plano.
Retorno
Promise<SessionState>

Retorna o estado da conta; veja a tabela de campos abaixo.

Application.restore
restore(options?: {signal?: AbortSignal}) → Promise<SessionState | null>
Finalidade
Lê a sessão salva, confirma a conta online, obtém nova declaração e inicia o SDK oficial.
Parâmetros
  • ctx / ct / signal / cancellation: Contexto da requisição ou sinal de cancelamento; o contexto de ciclo Go controla também tarefas em segundo plano.
Retorno
Promise<SessionState | null>

Retorna o estado; null ou nil indica ausência de sessão restaurável. Outras falhas geram erros.

Application.runFeature
runFeature<T>(name: string, action: () => T | Promise<T>) → Promise<T>
Finalidade
O SDK oficial verifica cada execução e só executa o callback quando autorizado.
Parâmetros
  • feature / name, action / block: O nome da função deve corresponder à política; o callback contém o trabalho protegido real.
Retorno
Promise<T>

Retorna o resultado do callback de negócio; falhas de autorização e exceções geram erros.

Application.logout
logout(options?: {signal?: AbortSignal}) → Promise<boolean>
Finalidade
Interrompe a autorização local, encerra a sessão do SDK oficial e revoga a sessão Launch. Preserva tarefas remotas pendentes para repetir.
Parâmetros
  • ctx / ct / signal / cancellation: Contexto da requisição ou sinal de cancelamento; o contexto de ciclo Go controla também tarefas em segundo plano.
Retorno
Promise<boolean>

true confirma a saída; false indica saída remota ou revogação de dispositivo pendente. Falhas de armazenamento também podem gerar erros.

Application.releaseDevice
releaseDevice(options?: {signal?: AbortSignal}) → Promise<void>
Finalidade
Entrada compatível de saída explícita, com o mesmo fluxo de conta e dispositivo de Logout.
Parâmetros
  • ctx / ct / signal / cancellation: Contexto da requisição ou sinal de cancelamento; o contexto de ciclo Go controla também tarefas em segundo plano.
Retorno
Promise<void>

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

Application.close
close() → Promise<void>
Finalidade
Interrompe esta instância e tarefas mantendo o login salvo e o vínculo do dispositivo.
Retorno
Promise<void>

Sem retorno de negócio; fechamento normal não confirma saída da conta nem liberação do dispositivo.

APIs avançadas e de compatibilidade

Application
new Application(launch: LaunchConfig, product: PublicProductConfig, options?: Options) → Application
Finalidade
Valida as configurações públicas e cria a aplicação, sem iniciar sessão nem autorizar funções protegidas.
Parâmetros
  • launch, product: Objetos de configuração, runtime, transporte ou requisição, somente para integrações avançadas.
  • options / config: Opções de armazenamento, cache privado, cancelamento, tentativas ou componentes avançados.
Retorno
Application

Retorna o objeto criado; inicialização não comprova autorização.

Application.fromFiles
Application.fromFiles(launchPath: string, productPath: string, options?: Options) → Promise<Application>
Finalidade
Lê duas configurações públicas existentes, verifica os produtos e cria a aplicação. A conexão direta dispensa arquivos.
Parâmetros
  • launchPath, productPath: Caminhos de configuração escolhidos ou diretório privado de cache e armazenamento do usuário atual.
  • options / config: Opções de armazenamento, cache privado, cancelamento, tentativas ou componentes avançados.
Retorno
Promise<Application>

Retorna o objeto criado; inicialização não comprova autorização.

validateConfig
validateConfig(launch: LaunchConfig, product: PublicProductConfig) → {launch: LaunchConfig, product: PublicProductConfig}
Finalidade
Valida ou lê configurações públicas; produtos, ambiente e chaves de assinatura devem corresponder.
Parâmetros
  • launch, product: Objetos de configuração, runtime, transporte ou requisição, somente para integrações avançadas.
Retorno
{launch: LaunchConfig, product: PublicProductConfig}

Retorna o tipo indicado na assinatura; o resultado não concede permissão de função.

loadConfig
loadConfig(launchPath: string, productPath: string) → Promise<{launch: LaunchConfig, product: PublicProductConfig}>
Finalidade
Valida ou lê configurações públicas; produtos, ambiente e chaves de assinatura devem corresponder.
Parâmetros
  • launchPath, productPath: Caminhos de configuração escolhidos ou diretório privado de cache e armazenamento do usuário atual.
Retorno
Promise<{launch: LaunchConfig, product: PublicProductConfig}>

Retorna o tipo indicado na assinatura; o resultado não concede permissão de função.

defaultTransport
defaultTransport(request: Request) → Promise<Response>
Finalidade
Envia requisições HTTP da conta e retorna status, cabeçalhos ou corpo bruto, sem decidir autorização.
Parâmetros
  • request: Objetos de configuração, runtime, transporte ou requisição, somente para integrações avançadas.
Retorno
Promise<Response>

Retorna o tipo indicado na assinatura; o resultado não concede permissão de função.

MemoryStore
new MemoryStore() → MemoryStore
Finalidade
Cria armazenamento de sessão válido somente neste processo.
Retorno
MemoryStore

Retorna o objeto criado; inicialização não comprova autorização.

EncryptedFileStore
new EncryptedFileStore(directory: string, key: Uint8Array) → EncryptedFileStore
Finalidade
Cria armazenamento persistente protegido; obtenha a chave no cofre de credenciais do sistema operacional.
Parâmetros
  • directory: Caminhos de configuração escolhidos ou diretório privado de cache e armazenamento do usuário atual.
  • key: Chave de criptografia do cofre do sistema; nunca armazene junto dos registros criptografados.
Retorno
EncryptedFileStore

Retorna o objeto criado; inicialização não comprova autorização.

LaunchError
new LaunchError(code: string, status=0, retryAfterSeconds=0) → LaunchError
Finalidade
Cria ou lê erros estruturados para classificação, espera e diagnóstico correlacionado.
Parâmetros
  • code, status, retryAfterSeconds: Cria ou lê erros estruturados para classificação, espera e diagnóstico correlacionado.
Retorno
LaunchError

Retorna o tipo indicado na assinatura; o resultado não concede permissão de função.

SessionStore.load / MemoryStore.load / EncryptedFileStore.load
load(scope: string) → Promise<SavedSession | null>
Finalidade
Carrega a conta por chave isolada; o registro contém segredos exclusivos do SDK.
Parâmetros
  • scope / key, value / record: Chaves de isolamento e registros secretos SDK; armazenamento personalizado deve aceitar múltiplas chaves e substituição atômica.
Retorno
Promise<SavedSession | null>

Retorna o registro secreto; ausência retorna valor vazio ou ErrNoSession conforme a linguagem.

SessionStore.save / MemoryStore.save / EncryptedFileStore.save
save(scope: string, value: SavedSession) → Promise<void>
Finalidade
Salva atomicamente o registro da conta sob sua chave isolada.
Parâmetros
  • scope / key, value / record: Chaves de isolamento e registros secretos SDK; armazenamento personalizado deve aceitar múltiplas chaves e substituição atômica.
Retorno
Promise<void>

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

SessionStore.delete / MemoryStore.delete / EncryptedFileStore.delete
delete(scope: string) → Promise<void>
Finalidade
Exclui o registro da conta, preservando caches de autorização e diário de saída do SDK oficial.
Parâmetros
  • scope / key, value / record: Chaves de isolamento e registros secretos SDK; armazenamento personalizado deve aceitar múltiplas chaves e substituição atômica.
Retorno
Promise<void>

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

Runtime.status
status() → {allowed:boolean,state:string} | Promise<{allowed:boolean,state:string}>
Finalidade
Lê o estado de autorização do SDK oficial; não autentica nem substitui a verificação de cada função.
Retorno
{allowed:boolean,state:string} | Promise<{allowed:boolean,state:string}>

Lê o estado de autorização do SDK oficial; não autentica nem substitui a verificação de cada função.

Runtime.start
start(onError?: (error: unknown) => void, signal?: AbortSignal) → Promise<unknown>
Finalidade
Inicia verificação e manutenção SDK oficial; login e proteção de funções usam APIs separadas.
Parâmetros
  • onError: Cria ou lê erros estruturados para classificação, espera e diagnóstico correlacionado.
  • ctx / ct / signal / cancellation: Contexto da requisição ou sinal de cancelamento; o contexto de ciclo Go controla também tarefas em segundo plano.
Retorno
Promise<unknown>

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

Runtime.runFeature
runFeature<T>(name: string, action: () => T | Promise<T>) → Promise<T>
Finalidade
O SDK oficial verifica cada execução e só executa o callback quando autorizado.
Parâmetros
  • feature / name, action / block: O nome da função deve corresponder à política; o callback contém o trabalho protegido real.
Retorno
Promise<T>

Retorna o resultado do callback de negócio; falhas de autorização e exceções geram erros.

Runtime.deactivate
deactivate(signal?: AbortSignal) → Promise<unknown>
Finalidade
Encerra a sessão do dispositivo pelo SDK oficial; a aplicação revoga a sessão Launch separadamente.
Parâmetros
  • ctx / ct / signal / cancellation: Contexto da requisição ou sinal de cancelamento; o contexto de ciclo Go controla também tarefas em segundo plano.
Retorno
Promise<unknown>

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

Runtime.logout
logout?(signal?: AbortSignal) → Promise<{local_complete:boolean,revocation_pending:boolean,storage_error?:string}>
Finalidade
Encerra a sessão do dispositivo pelo SDK oficial; a aplicação revoga a sessão Launch separadamente.
Parâmetros
  • ctx / ct / signal / cancellation: Contexto da requisição ou sinal de cancelamento; o contexto de ciclo Go controla também tarefas em segundo plano.
Retorno
Promise<{local_complete:boolean,revocation_pending:boolean,storage_error?:string}>

Saída local e revogação remota são distintas. Trate pendências e falhas de armazenamento; preserve o diário SDK.

Runtime.close
close() → Promise<unknown>
Finalidade
Interrompe esta instância e tarefas mantendo o login salvo e o vínculo do dispositivo.
Retorno
Promise<unknown>

Sem retorno de negócio; fechamento normal não confirma saída da conta nem liberação do dispositivo.

Rust

Código correspondente · v0.1.6 · lib.rs · store.rs · transport.rs

Erros e falhas: 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>
Finalidade
Valida as configurações públicas e cria a aplicação, sem iniciar sessão nem autorizar funções protegidas.
Parâmetros
  • merchantOrigin / origin: Origem completa da loja com protocolo e porta necessária; use HTTPS em produção.
  • productID / product_id: Identificador de produto Launch, preenchido automaticamente pelo código de integração administrativo.
  • licentivoProductID / licentivo_product_id: Identificador do produto de licença Licentivo, correspondente à configuração pública de assinatura.
  • trustedKeys / trusted_keys: Mapa de identificadores de chave para chaves públicas que verificam permissões assinadas do SDK oficial.
  • environment: sandbox ou live; mantenha contas, produtos e caches no mesmo ambiente.
Retorno
Result<Application, Failure>

Retorna o objeto criado; inicialização não comprova autorização.

Application::login
login(&mut self, email: &str, password: &str) → Result<State, Failure>
Finalidade
Autentica a conta da loja, obtém uma declaração de identidade temporária e inicia o SDK oficial.
Parâmetros
  • email, password: Email e senha da conta do cliente nesta loja; use a senha apenas neste login.
Retorno
Result<State, Failure>

Retorna o estado da conta; veja a tabela de campos abaixo.

Application::restore
restore(&mut self) → Result<State, Failure>
Finalidade
Lê a sessão salva, confirma a conta online, obtém nova declaração e inicia o SDK oficial.
Retorno
Result<State, Failure>

Retorna o estado; ErrNoSession ou NO_SESSION indica ausência de sessão salva. Trate outros erros separadamente.

Application::run_feature
run_feature<T,F: FnOnce() -> Result<T,Failure>>(&mut self, feature: &str, action: F) → Result<T, Failure>
Finalidade
O SDK oficial verifica cada execução e só executa o callback quando autorizado.
Parâmetros
  • feature / name, action / block: O nome da função deve corresponder à política; o callback contém o trabalho protegido real.
Retorno
Result<T, Failure>

Retorna o resultado do callback de negócio; falhas de autorização e exceções geram erros.

Application::logout
logout(&mut self) → Result<(), Failure>
Finalidade
Interrompe a autorização local, encerra a sessão do SDK oficial e revoga a sessão Launch. Preserva tarefas remotas pendentes para repetir.
Retorno
Result<(), Failure>

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

Application::release_device
release_device(&mut self) → Result<(), Failure>
Finalidade
Entrada compatível de saída explícita, com o mesmo fluxo de conta e dispositivo de Logout.
Retorno
Result<(), Failure>

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

Application::close / Drop
close(&mut self) / drop(&mut self) → ()
Finalidade
Interrompe esta instância e tarefas mantendo o login salvo e o vínculo do dispositivo.
Retorno
()

Sem retorno de negócio; fechamento normal não confirma saída da conta nem liberação do dispositivo.

APIs avançadas e de compatibilidade

Application::new
Application::new(config: Config, product: Value, cache_root: PathBuf) → Result<Application, Failure>
Finalidade
Valida as configurações públicas e cria a aplicação, sem iniciar sessão nem autorizar funções protegidas.
Parâmetros
  • config, product: Objetos de configuração, runtime, transporte ou requisição, somente para integrações avançadas.
  • cache_root: Caminhos de configuração escolhidos ou diretório privado de cache e armazenamento do usuário atual.
Retorno
Result<Application, Failure>

Retorna o objeto criado; inicialização não comprova autorização.

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>
Finalidade
Valida as configurações públicas e cria a aplicação, sem iniciar sessão nem autorizar funções protegidas.
Parâmetros
  • config, product: Objetos de configuração, runtime, transporte ou requisição, somente para integrações avançadas.
  • cache_root: Caminhos de configuração escolhidos ou diretório privado de cache e armazenamento do usuário atual.
  • store, transport, factory, sleeper: Opções de armazenamento, cache privado, cancelamento, tentativas ou componentes avançados.
Retorno
Result<Application, Failure>

Retorna o objeto criado; inicialização não comprova autorização.

Config::new
Config::new(origin: &str, product: &str, runtime_product: &str, environment: &str) → Result<Config, Failure>
Finalidade
Valida ou lê configurações públicas; produtos, ambiente e chaves de assinatura devem corresponder.
Parâmetros
  • merchantOrigin / origin: Origem completa da loja com protocolo e porta necessária; use HTTPS em produção.
  • productID / product_id: Identificador de produto Launch, preenchido automaticamente pelo código de integração administrativo.
  • licentivoProductID / licentivo_product_id: Identificador do produto de licença Licentivo, correspondente à configuração pública de assinatura.
  • environment: sandbox ou live; mantenha contas, produtos e caches no mesmo ambiente.
Retorno
Result<Config, Failure>

Retorna o tipo indicado na assinatura; o resultado não concede permissão de função.

Config::load
Config::load(path: impl AsRef<Path>) → Result<Config, Failure>
Finalidade
Valida ou lê configurações públicas; produtos, ambiente e chaves de assinatura devem corresponder.
Parâmetros
  • path: Caminhos de configuração escolhidos ou diretório privado de cache e armazenamento do usuário atual.
Retorno
Result<Config, Failure>

Retorna o tipo indicado na assinatura; o resultado não concede permissão de função.

read_public
read_public(path: impl AsRef<Path>) → Result<Value, Failure>
Finalidade
Valida ou lê configurações públicas; produtos, ambiente e chaves de assinatura devem corresponder.
Parâmetros
  • path: Caminhos de configuração escolhidos ou diretório privado de cache e armazenamento do usuário atual.
Retorno
Result<Value, Failure>

Retorna o tipo indicado na assinatura; o resultado não concede permissão de função.

MemoryStore::default
MemoryStore::default() → MemoryStore
Finalidade
Cria armazenamento de sessão válido somente neste processo.
Retorno
MemoryStore

Retorna o objeto criado; inicialização não comprova autorização.

EncryptedFileStore::new
EncryptedFileStore::new(root: PathBuf, vault_key: [u8;32]) → Result<EncryptedFileStore, Failure>
Finalidade
Cria armazenamento persistente protegido; obtenha a chave no cofre de credenciais do sistema operacional.
Parâmetros
  • root: Caminhos de configuração escolhidos ou diretório privado de cache e armazenamento do usuário atual.
  • vault_key: Chave de criptografia do cofre do sistema; nunca armazene junto dos registros criptografados.
Retorno
Result<EncryptedFileStore, Failure>

Retorna o objeto criado; inicialização não comprova autorização.

CurlTransport::new
CurlTransport::new() → Result<CurlTransport, Failure>
Finalidade
Envia requisições HTTP da conta e retorna status, cabeçalhos ou corpo bruto, sem decidir autorização.
Retorno
Result<CurlTransport, Failure>

Retorna o objeto criado; inicialização não comprova autorização.

CurlTransport::request
request(&mut self, method: &str, url: &str, bearer: &str, body: &[u8]) → Result<Response, Failure>
Finalidade
Envia requisições HTTP da conta e retorna status, cabeçalhos ou corpo bruto, sem decidir autorização.
Parâmetros
  • method, url, bearer, body: Objetos de configuração, runtime, transporte ou requisição, somente para integrações avançadas.
Retorno
Result<Response, Failure>

Retorna o tipo indicado na assinatura; o resultado não concede permissão de função.

Failure::new
Failure::new(code: &str) → Failure
Finalidade
Cria ou lê erros estruturados para classificação, espera e diagnóstico correlacionado.
Parâmetros
  • code: Cria ou lê erros estruturados para classificação, espera e diagnóstico correlacionado.
Retorno
Failure

Retorna o tipo indicado na assinatura; o resultado não concede permissão de função.

ThreadSleeper::sleep
sleep(&mut self, duration: Duration) → Result<(), Failure>
Finalidade
Aguarda a duração indicada para agendar tentativas avançadas.
Parâmetros
  • duration: Espera recomendada para repetir; diferencie segundos, milissegundos e Duration conforme a linguagem.
Retorno
Result<(), Failure>

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

Store::load / MemoryStore::load / EncryptedFileStore::load
load(&mut self, scope: &str) → Result<Option<Vec<u8>>, Failure>
Finalidade
Carrega a conta por chave isolada; o registro contém segredos exclusivos do SDK.
Parâmetros
  • scope / key, value / record: Chaves de isolamento e registros secretos SDK; armazenamento personalizado deve aceitar múltiplas chaves e substituição atômica.
Retorno
Result<Option<Vec<u8>>, Failure>

Retorna o registro secreto; ausência retorna valor vazio ou ErrNoSession conforme a linguagem.

Store::save / MemoryStore::save / EncryptedFileStore::save
save(&mut self, scope: &str, value: &[u8]) → Result<(), Failure>
Finalidade
Salva atomicamente o registro da conta sob sua chave isolada.
Parâmetros
  • scope / key, value / record: Chaves de isolamento e registros secretos SDK; armazenamento personalizado deve aceitar múltiplas chaves e substituição atômica.
Retorno
Result<(), Failure>

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

Store::delete / MemoryStore::delete / EncryptedFileStore::delete
delete(&mut self, scope: &str) → Result<(), Failure>
Finalidade
Exclui o registro da conta, preservando caches de autorização e diário de saída do SDK oficial.
Parâmetros
  • scope / key, value / record: Chaves de isolamento e registros secretos SDK; armazenamento personalizado deve aceitar múltiplas chaves e substituição atômica.
Retorno
Result<(), Failure>

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

Runtime::run_feature
run_feature(&mut self, feature: &str, action: &mut dyn FnMut() -> Result<(),Failure>) → Result<(), Failure>
Finalidade
O SDK oficial verifica cada execução e só executa o callback quando autorizado.
Parâmetros
  • feature / name, action / block: O nome da função deve corresponder à política; o callback contém o trabalho protegido real.
Retorno
Result<(), Failure>

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

Runtime::release_device
release_device(&mut self) → Result<(), Failure>
Finalidade
Encerra a sessão do dispositivo pelo SDK oficial; a aplicação revoga a sessão Launch separadamente.
Retorno
Result<(), Failure>

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

Runtime::close
close(&mut self) → ()
Finalidade
Interrompe esta instância e tarefas mantendo o login salvo e o vínculo do dispositivo.
Retorno
()

Sem retorno de negócio; fechamento normal não confirma saída da conta nem liberação do dispositivo.

RuntimeFactory::open / OfficialRuntimeFactory::open
open(&mut self, settings: &Value, cached_only: bool) → Result<Box<dyn Runtime>, Failure>
Finalidade
Cria o adaptador SDK oficial para integrações avançadas; a declaração é transmitida apenas em memória.
Parâmetros
  • settings, cached_only: Objetos de configuração, runtime, transporte ou requisição, somente para integrações avançadas.
Retorno
Result<Box<dyn Runtime>, Failure>

Retorna o objeto criado; inicialização não comprova autorização.

RuntimeFactory::for_logout / OfficialRuntimeFactory::for_logout
for_logout(&mut self, settings: &Value) → Result<Box<dyn Runtime>, Failure>
Finalidade
Cria o adaptador SDK oficial para integrações avançadas; a declaração é transmitida apenas em memória.
Parâmetros
  • settings: Objetos de configuração, runtime, transporte ou requisição, somente para integrações avançadas.
Retorno
Result<Box<dyn Runtime>, Failure>

Retorna o objeto criado; inicialização não comprova autorização.

Sleeper::sleep
sleep(&mut self, duration: Duration) → Result<(), Failure>
Finalidade
Aguarda a duração indicada para agendar tentativas avançadas.
Parâmetros
  • duration: Espera recomendada para repetir; diferencie segundos, milissegundos e Duration conforme a linguagem.
Retorno
Result<(), Failure>

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

Ruby

Código correspondente · v0.1.6 · licentivo_launch.rb

Erros e falhas: 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
Finalidade
Valida as configurações públicas e cria a aplicação, sem iniciar sessão nem autorizar funções protegidas.
Parâmetros
  • merchantOrigin / origin: Origem completa da loja com protocolo e porta necessária; use HTTPS em produção.
  • productID / product_id: Identificador de produto Launch, preenchido automaticamente pelo código de integração administrativo.
  • licentivoProductID / licentivo_product_id: Identificador do produto de licença Licentivo, correspondente à configuração pública de assinatura.
  • trustedKeys / trusted_keys: Mapa de identificadores de chave para chaves públicas que verificam permissões assinadas do SDK oficial.
  • environment: sandbox ou live; mantenha contas, produtos e caches no mesmo ambiente.
  • options / config: Opções de armazenamento, cache privado, cancelamento, tentativas ou componentes avançados.
Retorno
Application

Retorna o objeto criado; inicialização não comprova autorização.

Application#login
login(email, password, cancellation: nil) → Hash
Finalidade
Autentica a conta da loja, obtém uma declaração de identidade temporária e inicia o SDK oficial.
Parâmetros
  • email, password: Email e senha da conta do cliente nesta loja; use a senha apenas neste login.
  • ctx / ct / signal / cancellation: Contexto da requisição ou sinal de cancelamento; o contexto de ciclo Go controla também tarefas em segundo plano.
Retorno
Hash

Retorna o estado da conta; veja a tabela de campos abaixo.

Application#restore
restore(cancellation: nil) → Hash | nil
Finalidade
Lê a sessão salva, confirma a conta online, obtém nova declaração e inicia o SDK oficial.
Parâmetros
  • ctx / ct / signal / cancellation: Contexto da requisição ou sinal de cancelamento; o contexto de ciclo Go controla também tarefas em segundo plano.
Retorno
Hash | nil

Retorna o estado; null ou nil indica ausência de sessão restaurável. Outras falhas geram erros.

Application#run_feature
run_feature(feature) { ... } → T
Finalidade
O SDK oficial verifica cada execução e só executa o callback quando autorizado.
Parâmetros
  • feature / name, action / block: O nome da função deve corresponder à política; o callback contém o trabalho protegido real.
Retorno
T

Retorna o resultado do callback de negócio; falhas de autorização e exceções geram erros.

Application#logout
logout(cancellation: nil) → true | false
Finalidade
Interrompe a autorização local, encerra a sessão do SDK oficial e revoga a sessão Launch. Preserva tarefas remotas pendentes para repetir.
Parâmetros
  • ctx / ct / signal / cancellation: Contexto da requisição ou sinal de cancelamento; o contexto de ciclo Go controla também tarefas em segundo plano.
Retorno
true | false

true confirma a saída; false indica saída remota ou revogação de dispositivo pendente. Falhas de armazenamento também podem gerar erros.

Application#release_device
release_device(cancellation: nil) → true | false
Finalidade
Entrada compatível de saída explícita, com o mesmo fluxo de conta e dispositivo de Logout.
Parâmetros
  • ctx / ct / signal / cancellation: Contexto da requisição ou sinal de cancelamento; o contexto de ciclo Go controla também tarefas em segundo plano.
Retorno
true | false

true confirma a saída; false indica saída remota ou revogação de dispositivo pendente. Falhas de armazenamento também podem gerar erros.

Application#close
close → nil
Finalidade
Interrompe esta instância e tarefas mantendo o login salvo e o vínculo do dispositivo.
Retorno
nil

Sem retorno de negócio; fechamento normal não confirma saída da conta nem liberação do dispositivo.

APIs avançadas e de compatibilidade

Application.new
Application.new(launch, product, store: MemoryStore.new, transport: nil, runtime_factory: nil, cache_dir: nil, sleep: nil, pending_attempts: 5) → Application
Finalidade
Valida as configurações públicas e cria a aplicação, sem iniciar sessão nem autorizar funções protegidas.
Parâmetros
  • launch, product: Objetos de configuração, runtime, transporte ou requisição, somente para integrações avançadas.
  • options / config: Opções de armazenamento, cache privado, cancelamento, tentativas ou componentes avançados.
Retorno
Application

Retorna o objeto criado; inicialização não comprova autorização.

Application.from_files
Application.from_files(launch_path, product_path, **options) → Application
Finalidade
Lê duas configurações públicas existentes, verifica os produtos e cria a aplicação. A conexão direta dispensa arquivos.
Parâmetros
  • launchPath, productPath: Caminhos de configuração escolhidos ou diretório privado de cache e armazenamento do usuário atual.
  • options / config: Opções de armazenamento, cache privado, cancelamento, tentativas ou componentes avançados.
Retorno
Application

Retorna o objeto criado; inicialização não comprova autorização.

LicentivoLaunch.origin
LicentivoLaunch.origin(value, environment) → String
Finalidade
Valida ou lê configurações públicas; produtos, ambiente e chaves de assinatura devem corresponder.
Parâmetros
  • value: Origem completa da loja com protocolo e porta necessária; use HTTPS em produção.
  • environment: sandbox ou live; mantenha contas, produtos e caches no mesmo ambiente.
Retorno
String

Retorna o tipo indicado na assinatura; o resultado não concede permissão de função.

LicentivoLaunch.validate_config
LicentivoLaunch.validate_config(launch, product) → [Hash, Hash]
Finalidade
Valida ou lê configurações públicas; produtos, ambiente e chaves de assinatura devem corresponder.
Parâmetros
  • launch, product: Objetos de configuração, runtime, transporte ou requisição, somente para integrações avançadas.
Retorno
[Hash, Hash]

Retorna o tipo indicado na assinatura; o resultado não concede permissão de função.

LicentivoLaunch.load_config
LicentivoLaunch.load_config(launch_path, product_path) → [Hash, Hash]
Finalidade
Valida ou lê configurações públicas; produtos, ambiente e chaves de assinatura devem corresponder.
Parâmetros
  • launchPath, productPath: Caminhos de configuração escolhidos ou diretório privado de cache e armazenamento do usuário atual.
Retorno
[Hash, Hash]

Retorna o tipo indicado na assinatura; o resultado não concede permissão de função.

LicentivoLaunch.default_transport
LicentivoLaunch.default_transport(request) → Hash
Finalidade
Envia requisições HTTP da conta e retorna status, cabeçalhos ou corpo bruto, sem decidir autorização.
Parâmetros
  • request: Objetos de configuração, runtime, transporte ou requisição, somente para integrações avançadas.
Retorno
Hash

Retorna o tipo indicado na assinatura; o resultado não concede permissão de função.

MemoryStore.new
MemoryStore.new → MemoryStore
Finalidade
Cria armazenamento de sessão válido somente neste processo.
Retorno
MemoryStore

Retorna o objeto criado; inicialização não comprova autorização.

EncryptedFileStore.new
EncryptedFileStore.new(directory, key) → EncryptedFileStore
Finalidade
Cria armazenamento persistente protegido; obtenha a chave no cofre de credenciais do sistema operacional.
Parâmetros
  • directory: Caminhos de configuração escolhidos ou diretório privado de cache e armazenamento do usuário atual.
  • key: Chave de criptografia do cofre do sistema; nunca armazene junto dos registros criptografados.
Retorno
EncryptedFileStore

Retorna o objeto criado; inicialização não comprova autorização.

MemoryStore#persistent? / EncryptedFileStore#persistent? / #secure?
persistent? / secure? → true | false
Finalidade
Valida ou lê configurações públicas; produtos, ambiente e chaves de assinatura devem corresponder.
Retorno
true | false

Retorna uma classificação booleana, não uma autorização.

EncryptedFileStore#path
path(scope) → String
Finalidade
Valida ou lê configurações públicas; produtos, ambiente e chaves de assinatura devem corresponder.
Parâmetros
  • scope: Chaves de isolamento e registros secretos SDK; armazenamento personalizado deve aceitar múltiplas chaves e substituição atômica.
Retorno
String

Retorna o tipo indicado na assinatura; o resultado não concede permissão de função.

CancellationToken#cancel / #check!
CancellationToken.new.cancel / check! → true / nil
Finalidade
Solicita ou verifica cancelamento cooperativo; cancelar não significa autorização bem-sucedida.
Retorno
true / nil

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

Error.new
Error.new(code, status: 0, retry_after_seconds: 0) → Error
Finalidade
Cria ou lê erros estruturados para classificação, espera e diagnóstico correlacionado.
Parâmetros
  • code, status, retry_after_seconds: Cria ou lê erros estruturados para classificação, espera e diagnóstico correlacionado.
Retorno
Error

Retorna o tipo indicado na assinatura; o resultado não concede permissão de função.

MemoryStore#load / EncryptedFileStore#load
load(scope) → Hash | nil
Finalidade
Carrega a conta por chave isolada; o registro contém segredos exclusivos do SDK.
Parâmetros
  • scope / key, value / record: Chaves de isolamento e registros secretos SDK; armazenamento personalizado deve aceitar múltiplas chaves e substituição atômica.
Retorno
Hash | nil

Retorna o registro secreto; ausência retorna valor vazio ou ErrNoSession conforme a linguagem.

MemoryStore#save / EncryptedFileStore#save
save(scope, record) → Object
Finalidade
Salva atomicamente o registro da conta sob sua chave isolada.
Parâmetros
  • scope / key, value / record: Chaves de isolamento e registros secretos SDK; armazenamento personalizado deve aceitar múltiplas chaves e substituição atômica.
Retorno
Object

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

MemoryStore#delete / EncryptedFileStore#delete
delete(scope) → Object
Finalidade
Exclui o registro da conta, preservando caches de autorização e diário de saída do SDK oficial.
Parâmetros
  • scope / key, value / record: Chaves de isolamento e registros secretos SDK; armazenamento personalizado deve aceitar múltiplas chaves e substituição atômica.
Retorno
Object

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

C

Código correspondente · v0.1.6 · account.h · account.c

Erros e falhas: 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 *
Finalidade
Valida as configurações públicas e cria a aplicação, sem iniciar sessão nem autorizar funções protegidas.
Parâmetros
  • merchantOrigin / origin: Origem completa da loja com protocolo e porta necessária; use HTTPS em produção.
  • productID / product_id: Identificador de produto Launch, preenchido automaticamente pelo código de integração administrativo.
  • licentivoProductID / licentivo_product_id: Identificador do produto de licença Licentivo, correspondente à configuração pública de assinatura.
  • trustedKeys / trusted_keys: Mapa de identificadores de chave para chaves públicas que verificam permissões assinadas do SDK oficial.
  • environment: sandbox ou live; mantenha contas, produtos e caches no mesmo ambiente.
  • remember, store: Opções de armazenamento, cache privado, cancelamento, tentativas ou componentes avançados.
Retorno
launch_application *

Retorna ponteiro sob sua propriedade; NULL indica falha de inicialização. Libere com close.

launch_application_login
launch_application_login(launch_application *app, const char *email, const char *password) → int
Finalidade
Autentica a conta da loja, obtém uma declaração de identidade temporária e inicia o SDK oficial.
Parâmetros
  • email, password: Email e senha da conta do cliente nesta loja; use a senha apenas neste login.
Retorno
int

1 indica sucesso; 0 indica falha. Leia o código de erro após falhar.

launch_application_restore
launch_application_restore(launch_application *app) → int
Finalidade
Lê a sessão salva, confirma a conta online, obtém nova declaração e inicia o SDK oficial.
Retorno
int

1 indica restauração, 0 nenhuma sessão e -1 negação ou falha. Leia o código após falhar.

launch_application_run_feature
launch_application_run_feature(app, feature, ln_feature_action action, void *context) → int
Finalidade
O SDK oficial verifica cada execução e só executa o callback quando autorizado.
Parâmetros
  • feature / name, action / block: O nome da função deve corresponder à política; o callback contém o trabalho protegido real.
  • context: Objetos de configuração, runtime, transporte ou requisição, somente para integrações avançadas.
Retorno
int

1 indica sucesso; 0 indica falha. Leia o código de erro após falhar.

launch_application_logout
launch_application_logout(launch_application *app) → int
Finalidade
Interrompe a autorização local, encerra a sessão do SDK oficial e revoga a sessão Launch. Preserva tarefas remotas pendentes para repetir.
Retorno
int

1 indica sucesso; 0 indica falha. Leia o código de erro após falhar.

launch_application_release_device
launch_application_release_device(launch_application *app) → int
Finalidade
Entrada compatível de saída explícita, com o mesmo fluxo de conta e dispositivo de Logout.
Retorno
int

1 indica sucesso; 0 indica falha. Leia o código de erro após falhar.

launch_application_status
launch_application_status(launch_application *app) → char *
Finalidade
Lê o estado de autorização do SDK oficial; não autentica nem substitui a verificação de cada função.
Retorno
char *

Retorna JSON cuja memória deve ser liberada com ln_free_string. Sem runtime: login_required e allowed=false.

launch_application_error
launch_application_error(const launch_application *app) → const char *
Finalidade
Cria ou lê erros estruturados para classificação, espera e diagnóstico correlacionado.
Retorno
const char *

Retorna texto de erro emprestado. Não libere nem use após destruir a aplicação.

launch_application_close
launch_application_close(launch_application *app) → void
Finalidade
Interrompe esta instância e tarefas mantendo o login salvo e o vínculo do dispositivo.
Retorno
void

Sem retorno de negócio; fechamento normal não confirma saída da conta nem liberação do dispositivo.

APIs avançadas e de compatibilidade

launch_application_open
launch_application_open(origin, product_id, product_config_path, environment, remember, store) → launch_application *
Finalidade
Lê duas configurações públicas existentes, verifica os produtos e cria a aplicação. A conexão direta dispensa arquivos.
Parâmetros
  • origin: Origem completa da loja com protocolo e porta necessária; use HTTPS em produção.
  • product_id: Identificador de produto Launch, preenchido automaticamente pelo código de integração administrativo.
  • product_config_path: Caminhos de configuração escolhidos ou diretório privado de cache e armazenamento do usuário atual.
  • environment: sandbox ou live; mantenha contas, produtos e caches no mesmo ambiente.
  • remember, store: Opções de armazenamento, cache privado, cancelamento, tentativas ou componentes avançados.
Retorno
launch_application *

Retorna ponteiro sob sua propriedade; NULL indica falha de inicialização. Libere com close.

launch_application_from_files
launch_application_from_files(launch_config_path, product_config_path, remember, store) → launch_application *
Finalidade
Lê duas configurações públicas existentes, verifica os produtos e cria a aplicação. A conexão direta dispensa arquivos.
Parâmetros
  • launchPath, productPath: Caminhos de configuração escolhidos ou diretório privado de cache e armazenamento do usuário atual.
  • remember, store: Opções de armazenamento, cache privado, cancelamento, tentativas ou componentes avançados.
Retorno
launch_application *

Retorna ponteiro sob sua propriedade; NULL indica falha de inicialização. Libere com close.

launch_application_cli
launch_application_cli(int argc, char **argv) → launch_application *
Finalidade
Lê duas configurações públicas existentes, verifica os produtos e cria a aplicação. A conexão direta dispensa arquivos.
Parâmetros
  • argc, argv: Objetos de configuração, runtime, transporte ou requisição, somente para integrações avançadas.
Retorno
launch_application *

Retorna ponteiro sob sua propriedade; NULL indica falha de inicialização. Libere com close.

launch_login / launch_sign_in
launch_login(account, origin, product_id, config_path, environment, email, password) / launch_sign_in(account, argc, argv) → int
Finalidade
API antiga preservada: o protocolo de credenciais de licença permanente foi removido e as chamadas falham. Use Application.
Parâmetros
  • account, origin, product_id, config_path, environment, email, password, argc, argv: Objetos de configuração, runtime, transporte ou requisição, somente para integrações avançadas.
Retorno
int

Sempre falha; migre para troca de identidade de conta.

launch_sign_out
launch_sign_out(launch_account *account, int clear_cache) → void
Finalidade
Interrompe esta instância e tarefas mantendo o login salvo e o vínculo do dispositivo.
Parâmetros
  • account, clear_cache: Objetos de configuração, runtime, transporte ou requisição, somente para integrações avançadas.
Retorno
void

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

ln_free_string
ln_free_string(char *value) → void
Finalidade
Interrompe esta instância e tarefas mantendo o login salvo e o vínculo do dispositivo.
Parâmetros
  • value: Retorna JSON cuja memória deve ser liberada com ln_free_string. Sem runtime: login_required e allowed=false.
Retorno
void

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

launch_secret_store.load
load(void *context, const char *scope, char **record) → int
Finalidade
Carrega a conta por chave isolada; o registro contém segredos exclusivos do SDK.
Parâmetros
  • context: Objetos de configuração, runtime, transporte ou requisição, somente para integrações avançadas.
  • scope, record: Chaves de isolamento e registros secretos SDK; armazenamento personalizado deve aceitar múltiplas chaves e substituição atômica.
Retorno
int

1 encontrado, 0 ausente, -1 falha de leitura. load aloca record; o chamador libera.

launch_secret_store.save
save(void *context, const char *scope, const char *record) → int (1: success, 0: failure)
Finalidade
Salva atomicamente o registro da conta sob sua chave isolada.
Parâmetros
  • context: Objetos de configuração, runtime, transporte ou requisição, somente para integrações avançadas.
  • scope, record: Chaves de isolamento e registros secretos SDK; armazenamento personalizado deve aceitar múltiplas chaves e substituição atômica.
Retorno
int (1: success, 0: failure)

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

launch_secret_store.remove
remove(void *context, const char *scope) → int (1: success, 0: failure)
Finalidade
Exclui o registro da conta, preservando caches de autorização e diário de saída do SDK oficial.
Parâmetros
  • context: Objetos de configuração, runtime, transporte ou requisição, somente para integrações avançadas.
  • scope: Chaves de isolamento e registros secretos SDK; armazenamento personalizado deve aceitar múltiplas chaves e substituição atômica.
Retorno
int (1: success, 0: failure)

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

C++

Código correspondente · v0.1.6 · launch.hpp

Erros e falhas: 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
Finalidade
Valida as configurações públicas e cria a aplicação, sem iniciar sessão nem autorizar funções protegidas.
Parâmetros
  • merchantOrigin / origin: Origem completa da loja com protocolo e porta necessária; use HTTPS em produção.
  • productID / product_id: Identificador de produto Launch, preenchido automaticamente pelo código de integração administrativo.
  • licentivoProductID / licentivo_product_id: Identificador do produto de licença Licentivo, correspondente à configuração pública de assinatura.
  • trustedKeys / trusted_keys: Mapa de identificadores de chave para chaves públicas que verificam permissões assinadas do SDK oficial.
  • environment: sandbox ou live; mantenha contas, produtos e caches no mesmo ambiente.
  • remember, store: Opções de armazenamento, cache privado, cancelamento, tentativas ou componentes avançados.
Retorno
Application

Retorna o objeto criado; inicialização não comprova autorização.

Application::Login
Login(const char *email, const char *password) → void
Finalidade
Autentica a conta da loja, obtém uma declaração de identidade temporária e inicia o SDK oficial.
Parâmetros
  • email, password: Email e senha da conta do cliente nesta loja; use a senha apenas neste login.
Retorno
void

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

Application::Restore
Restore() → bool
Finalidade
Lê a sessão salva, confirma a conta online, obtém nova declaração e inicia o SDK oficial.
Retorno
bool

true indica restauração; false indica ausência de sessão restaurável. Negação, expiração e falha de rede geram erros.

Application::RunFeature
RunFeature(const char *feature, Action action) → void
Finalidade
O SDK oficial verifica cada execução e só executa o callback quando autorizado.
Parâmetros
  • feature / name, action / block: O nome da função deve corresponder à política; o callback contém o trabalho protegido real.
Retorno
void

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

Application::Logout
Logout() → void
Finalidade
Interrompe a autorização local, encerra a sessão do SDK oficial e revoga a sessão Launch. Preserva tarefas remotas pendentes para repetir.
Retorno
void

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

Application::ReleaseDevice
ReleaseDevice() → void
Finalidade
Entrada compatível de saída explícita, com o mesmo fluxo de conta e dispositivo de Logout.
Retorno
void

Sem retorno de negócio; conclusão normal indica sucesso, erros ou exceções indicam falha.

Application::Status
Status() → std::string (JSON)
Finalidade
Lê o estado de autorização do SDK oficial; não autentica nem substitui a verificação de cada função.
Retorno
std::string (JSON)

Lê o estado de autorização do SDK oficial; não autentica nem substitui a verificação de cada função.

Application::~Application
~Application() → void
Finalidade
Interrompe esta instância e tarefas mantendo o login salvo e o vínculo do dispositivo.
Retorno
void

Sem retorno de negócio; fechamento normal não confirma saída da conta nem liberação do dispositivo.

APIs avançadas e de compatibilidade

Application
Application(origin, product, config, environment="live", remember=false, store=nullptr) → Application
Finalidade
Lê duas configurações públicas existentes, verifica os produtos e cria a aplicação. A conexão direta dispensa arquivos.
Parâmetros
  • origin: Origem completa da loja com protocolo e porta necessária; use HTTPS em produção.
  • product: Identificador de produto Launch, preenchido automaticamente pelo código de integração administrativo.
  • config: Caminhos de configuração escolhidos ou diretório privado de cache e armazenamento do usuário atual.
  • environment: sandbox ou live; mantenha contas, produtos e caches no mesmo ambiente.
  • remember, store: Opções de armazenamento, cache privado, cancelamento, tentativas ou componentes avançados.
Retorno
Application

Retorna o objeto criado; inicialização não comprova autorização.

Application(launch_application *)
explicit Application(launch_application *app) → Application
Finalidade
Valida as configurações públicas e cria a aplicação, sem iniciar sessão nem autorizar funções protegidas.
Parâmetros
  • app: Retorna ponteiro sob sua propriedade; NULL indica falha de inicialização. Libere com close.
Retorno
Application

Retorna o objeto criado; inicialização não comprova autorização.

Application::FromFiles
Application::FromFiles(launch, product, remember=false, store=nullptr) → Application
Finalidade
Lê duas configurações públicas existentes, verifica os produtos e cria a aplicação. A conexão direta dispensa arquivos.
Parâmetros
  • launch, product: Caminhos de configuração escolhidos ou diretório privado de cache e armazenamento do usuário atual.
  • remember, store: Opções de armazenamento, cache privado, cancelamento, tentativas ou componentes avançados.
Retorno
Application

Retorna o objeto criado; inicialização não comprova autorização.

Application(Application&&) / operator=
Application(Application&& other) / operator=(Application&& other) → Application / Application&
Finalidade
Transfere a propriedade da aplicação nativa. A cópia é desabilitada e o objeto original deixa de possuir o ponteiro.
Parâmetros
  • other: Objetos de configuração, runtime, transporte ou requisição, somente para integrações avançadas.
Retorno
Application / Application&

Retorna o objeto criado; inicialização não comprova autorização.

Campos retornados

Retorna o estado da conta; veja a tabela de campos abaixo.

CampoTipoFinalidade
Go State.User.ID · JS user.id · Java userID · Rust user_id · Ruby user.idstringIdentificador único da conta da loja, distinto de produto, licença e dispositivo.
Go User.Email · JS user.email · Java/Rust/Ruby emailstringEmail da conta; algumas linguagens incluem somente o identificador no estado.
Go User.Verified / user.verifiedbooleanSe o email da loja foi verificado; não é autorização de software.
JS user.display_namestring (optional)Nome de exibição da conta; omitido se o servidor não o fornecer.
Go State/Session.ExpiresAt · JS expiresAt · Java expiresAt · Rust/Ruby expires_attime.Time / ISO 8601 / InstantExpiração da sessão Launch, distinta da compra ou do prazo de autorização offline.
Java offlineFallback · Rust offline_fallbackboolean = falseCampo de compatibilidade; a restauração atual não escolhe recuperação offline e retorna false.
C / C++ status.allowed · C# Status().AllowedbooleanSe o SDK oficial permite o uso atual; verifique cada função separadamente.
C / C++ status.state · C# Status().StatestringNome do estado do SDK oficial; antes do login pode ser login_required.
C / C++ status.code · C# Status().CodestringCódigo de erro estável para mensagens e ramificações de tratamento.
C / C++ status.request_id · C# Status().RequestIDstringIdentificador de correlação do servidor para diagnóstico; nem toda linguagem expõe o campo.
C / C++ status.retryable · C# Status().RetryablebooleanSe é recomendado repetir; não permite executar funções protegidas agora.
C / C++ status.lease_valid_until · C# Status().LeaseValidUntilUnix secondsExpiração da permissão assinada SDK em segundos Unix, distinta da sessão da conta.
Go Identity.ProductID / product_idUUIDIdentificador de produto Launch, preenchido automaticamente pelo código de integração administrativo.
Go Identity.LicentivoProductID / licentivo_product_idUUIDIdentificador do produto de licença Licentivo, correspondente à configuração pública de assinatura.
Go Identity.LaunchConnectionID / launch_connection_idUUIDIdentificador fixado da conexão Launch, correspondente ao produto e ambiente.
Go Identity.Environment / environmentsandbox | livesandbox ou live; mantenha contas, produtos e caches no mesmo ambiente.
Go Identity.IdentityToken / identity_tokenstringDeclaração temporária de uso único, passada em memória ao SDK oficial; nunca uma credencial offline.
Go Identity.ExpiresAt / identity.expires_attime.Time / ISO 8601Expiração da declaração de identidade, distinta da sessão da conta e da compra.
Go Session.AccessToken / access_token / tokenstringToken de sessão Launch, retornado somente por interfaces de sessão básicas ou armazenamento criptografado.

Tokens, declarações e registros salvos são secretos. Não exponha em logs nem renderizadores do navegador.

Erros e falhas

CampoTipoFinalidade
Go APIError.Code · Python APIError.code · C# Code · Java/Rust/Ruby code · JS code · C error()stringCódigo de erro estável para mensagens e ramificações de tratamento.
Go APIError.Status · Python status · C# Status · Java/Rust/Ruby/JS statusintegerStatus HTTP; 0 indica nenhuma resposta HTTP disponível.
Go RequestID · Java requestID · Rust request_idstringIdentificador de correlação do servidor para diagnóstico; nem toda linguagem expõe o campo.
Go RetryAfter · Python retry_after · C# RetryAfterSeconds · Java retryAfterMillis · JS/Ruby retryAfterSeconds / retry_after_seconds · Rust retry_afterDuration / s / msEspera recomendada para repetir; diferencie segundos, milissegundos e Duration conforme a linguagem.

Saída local e revogação remota são distintas. Trate pendências e falhas de armazenamento; preserve o diário SDK.