Configuration
Configuration and credential loading. Resolves credentials from explicit params, environment variables, and stored files with priority chain.
6 methods
config.loadConfig()
Load full SDK configuration. Resolves credentials via priority chain: explicit params > env vars > stored credentials.
ParametersLoadConfigOptions
apiKeyoptionalstringAPI key (highest priority).
emailoptionalstringemailEmail for session auth.
passwordoptionalstringPassword for session auth.
sessionTokenoptionalstringPre-existing session token.
baseUrloptionalstringuriAPI base URL.
authBaseUrloptionalstringuriAuth API base URL.
profileoptionalstringCredential profile name.
Default:defaultdebugoptionalbooleanEnable debug logging.
timeoutoptionalnumberRequest timeout in ms.
retriesoptionalnumberMax retry attempts.
Return Fields
baseUrlrequiredstringResolved API base URL.
authBaseUrloptionalstringAuth API base URL.
credentialsrequiredCredentialsResolved credentials.
debugrequiredbooleanWhether debug mode is enabled.
timeoutoptionalnumberRequest timeout in ms.
retriesoptionalnumberMax retry attempts.
loadConfig(options?: LoadConfigOptions): SdkConfigimport { HttpClient } from '@uluops/sdk-core';
const client = new HttpClient({
apiKey: 'ulr_your-api-key',
});
const result = await config.loadConfig();
console.log(result.baseUrl);// SdkConfig
{
baseUrl: string;
authBaseUrl?: string;
credentials: Credentials;
debug: boolean;
timeout?: number;
retries?: number;
}config.loadCredentials()
Load credentials using priority chain: explicit params > environment variables > stored file (~/.uluops/credentials.json).
ParametersLoadCredentialsOptions
apiKeyoptionalstringAPI key.
emailoptionalstringemailEmail.
passwordoptionalstringPassword.
sessionTokenoptionalstringSession token.
profileoptionalstringProfile name from credentials file.
Default:defaultloadCredentials(options?: LoadCredentialsOptions): Credentialsimport { HttpClient } from '@uluops/sdk-core';
const client = new HttpClient({
apiKey: 'ulr_your-api-key',
});
const result = await config.loadCredentials();Credentialsconfig.loadEnvFiles()
Load environment variables from .env files. Priority: local .env > global ~/.uluops/.env. Called automatically by loadConfig and loadCredentials.
loadEnvFiles(): voidimport { HttpClient } from '@uluops/sdk-core';
const client = new HttpClient({
apiKey: 'ulr_your-api-key',
});
const result = await config.loadEnvFiles();voidconfig.loadStoredCredentials()
Load stored credentials from ~/.uluops/credentials.json. Validates session token expiration.
Parameters
profileoptionalstringProfile name.
Default:defaultloadStoredCredentials(profile?: string): Partial<Credentials> | nullimport { HttpClient } from '@uluops/sdk-core';
const client = new HttpClient({
apiKey: 'ulr_your-api-key',
});
const result = await config.loadStoredCredentials();Partial<Credentials> | nullconfig.validateCredentials()
Validate that required credentials are present. Throws ValidationError if no credentials found.
Parameters
credentialsrequiredCredentialsCredentials object to validate.
validateCredentials(credentials: Credentials): voidimport { HttpClient } from '@uluops/sdk-core';
const client = new HttpClient({
apiKey: 'ulr_your-api-key',
});
const result = await config.validateCredentials('example-value');voidconfig.isApiKey()
Check if a string looks like an API key (starts with 'ulr_' prefix).
Parameters
valuerequiredstringString to check.
isApiKey(value: string): booleanimport { HttpClient } from '@uluops/sdk-core';
const client = new HttpClient({
apiKey: 'ulr_your-api-key',
});
const result = await config.isApiKey('example-value');boolean