Sample code for 30+ languages & platforms
Visual Basic 6.0

AWS Secrets Manager - List Secrets

See more AWS Secrets Manager Examples

Lists the secrets that are stored by Secrets Manager in the AWS account. Lists the secrets that are stored by Secrets Manager in the AWS account.

Chilkat Visual Basic 6.0 Downloads

Visual Basic 6.0
Dim success As Long
success = 0

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

' Sends the following sample request.
' Note: Chilkat will automatically add Content-Length, X-Amz-Date, Accept-Encoding, and Authorization

' POST / HTTP/1.1
' Host: secretsmanager.region.domain
' Accept-Encoding: identity
' X-Amz-Target: secretsmanager.ListSecrets
' Content-Type: application/x-amz-json-1.1
' X-Amz-Date: <date>
' Authorization: AWS4-HMAC-SHA256 Credential=<credentials>,SignedHeaders=<headers>, Signature=<signature>
' Content-Length: <payload-size-bytes>
' 
' {}

Dim rest As New ChilkatRest

' Connect to the Amazon AWS REST server.
' such as https://secretsmanager.us-west-2.amazonaws.com/
Dim bTls As Long
bTls = 1
Dim port As Long
port = 443
Dim bAutoReconnect As Long
bAutoReconnect = 1
success = rest.Connect("secretsmanager.us-west-2.amazonaws.com",port,bTls,bAutoReconnect)

' Provide AWS credentials for the REST call.
Dim authAws As New ChilkatAuthAws
authAws.AccessKey = "AWS_ACCESS_KEY"
authAws.SecretKey = "AWS_SECRET_KEY"
' the region should match our URL above..
authAws.Region = "us-west-2"
authAws.ServiceName = "secretsmanager"

success = rest.SetAuthAws(authAws)

success = rest.AddHeader("Content-Type","application/x-amz-json-1.1")
success = rest.AddHeader("X-Amz-Target","secretsmanager.ListSecrets")

Dim strResponse As String
strResponse = rest.FullRequestString("POST","/","{}")
If (rest.LastMethodSuccess = 0) Then
    Debug.Print rest.LastErrorText
    Exit Sub
End If

Dim respStatusCode As Long
respStatusCode = rest.ResponseStatusCode
Debug.Print "response status code = " & respStatusCode

Dim jResp As New ChilkatJsonObject
jResp.EmitCompact = 0
success = jResp.Load(strResponse)

If (respStatusCode >= 400) Then
    Debug.Print "Response Status Code = " & respStatusCode
    Debug.Print "Response Header:"
    Debug.Print rest.ResponseHeader
    Debug.Print "Response Body:"
    Debug.Print jResp.Emit()
    Exit Sub
End If

Debug.Print "Response Body:"
Debug.Print jResp.Emit()

' Sample response body:

' {
'   "SecretList":[
'     {
'       "ARN":"arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestDatabaseSecret-a1b2c3",
'       "Description":"My test database secret",
'       "LastChangedDate":1.523477145729E9,
'       "Name":"MyTestDatabaseSecret",
'       "SecretVersionsToStages":{
'         "EXAMPLE2-90ab-cdef-fedc-ba987EXAMPLE":["AWSCURRENT"]
'       }
'     },
'     {
'       "ARN":"arn:aws:secretsmanager:us-west-2:123456789012:secret:AnotherDatabaseSecret-d4e5f6",
'       "Description":"Another secret created for a different database",
'       "LastChangedDate":1.523482025685E9,
'       "Name":"AnotherDatabaseSecret",
'       "SecretVersionsToStages":{
'         "EXAMPLE3-90ab-cdef-fedc-ba987EXAMPLE":["AWSCURRENT"]
'       }
'     }
'   ]
' }

Dim ARN As String
Dim Description As String
Dim LastChangedDate As String
Dim Name As String
Dim strVal As String

Dim json2 As New ChilkatJsonObject
Dim jarr As New ChilkatJsonArray

Dim i As Long
i = 0
Dim count_i As Long
count_i = jResp.SizeOfArray("SecretList")
Do While i < count_i
    jResp.I = i
    ARN = jResp.StringOf("SecretList[i].ARN")
    Description = jResp.StringOf("SecretList[i].Description")
    LastChangedDate = jResp.StringOf("SecretList[i].LastChangedDate")
    Name = jResp.StringOf("SecretList[i].Name")

    success = jResp.ObjectOf2("SecretList[i].SecretVersionsToStages",json2)
    Dim count As Long
    count = json2.Size
    Dim j As Long
    j = 0
    Do While j < count
        Dim versionName As String
        versionName = json2.NameAt(j)
        success = json2.ArrayOf2(versionName,jarr)
        Dim stage As String
        stage = jarr.StringAt(0)
        Debug.Print "versionName = " & versionName
        Debug.Print "stage = " & stage
        j = j + 1
    Loop

    i = i + 1
Loop