Sample code for 30+ languages & platforms
AutoIt

Doppler Secrets - Get a JSON Secret

See more Secrets Examples

Demonstrates how to fetch the content of a JSON secret from the Doppler Secrets.

Note: This example requires Chilkat v10.1.0 or later.

Chilkat AutoIt Downloads

AutoIt
Local $bSuccess = False

; This example requires the Chilkat API to have been previously unlocked.
; See Global Unlock Sample for sample code.

; The bootstrap secret will contain the following information:

; Doppler Token

; See following examples for setting up a bootstrap secret in memory, 
; or in the local manager (Windows Credentials Manager or Apple Keychain)
; Setup Bootstrap Secret in Local Manager
; Setup Bootstrap Secret in Memory
$oBootstrap = ObjCreate("Chilkat.Secrets")

; Set the location of the bootstrap secret.
; Can be "local_manager" or "memory", depending on how you setup the bootstrap secret.
; ---------------------------------------------------------------------------------------------
; If your operating system is NOT Windows or MacOS/iOS, then change "local_manager" to "memory"
; You can also, if desired, use "memory" on Windows and MacOS/iOS if your bootstrap secret was previously setup in memory.
; ---------------------------------------------------------------------------------------------
$oBootstrap.Location = "local_manager"

; Specify the bootstrap secret to be used.
$oBsId = ObjCreate("Chilkat.JsonObject")
$oBsId.UpdateString("appName","doppler_bs")
$oBsId.UpdateString("service","Example")
$oBsId.UpdateString("username","Joe")

; ----------------------------------------------------
$oSecrets = ObjCreate("Chilkat.Secrets")

; Setup for the Doppler Secrets
$oSecrets.Location = "doppler"
$bSuccess = $oSecrets.SetBootstrapSecret($oBsId,$oBootstrap)
If ($bSuccess = False) Then
    ConsoleWrite($oSecrets.LastErrorText & @CRLF)
    Exit
EndIf

; Specify the secret to be fetched.
$oJson = ObjCreate("Chilkat.JsonObject")
$oJson.UpdateString("appName","MyApp")
$oJson.UpdateString("service","OAuth2")
$oJson.UpdateString("domain","onedrive")
$oJson.UpdateString("username","matt")

; You'll also need to specify your Doppler project and config names for each API call.
$oJson.UpdateString("project_name","example-project")
$oJson.UpdateString("config_name","dev")

; Get the secret.
$oJsonSecret = ObjCreate("Chilkat.JsonObject")
$bSuccess = $oSecrets.GetSecretJson($oJson,$oJsonSecret)
If ($bSuccess = False) Then
    ConsoleWrite($oSecrets.LastErrorText & @CRLF)
    Exit
EndIf

$oJsonSecret.EmitCompact = False
ConsoleWrite($oJsonSecret.Emit() & @CRLF)
ConsoleWrite("Success." & @CRLF)