Sample code for 30+ languages & platforms
B4X

Amazon Glacier Add Tags to Vault

See more Amazon Glacier Examples

Demonstrates how to add tags to a glacier vault.

Chilkat B4X Downloads

B4X
Dim success As Boolean = False

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

Dim rest As ChilkatRest
rest.Initialize("rest")

'  Connect to the Amazon AWS REST server in the desired region.
Dim bTls As Boolean = True
Dim port As Int = 443
Dim bAutoReconnect As Boolean = True
success = rest.Connect("glacier.us-west-2.amazonaws.com", port, bTls, bAutoReconnect)

'  Provide AWS credentials.
Dim authAws As ChilkatAuthAws
authAws.Initialize
authAws.AccessKey = "AWS_ACCESS_KEY"
authAws.SecretKey = "AWS_SECRET_KEY"
authAws.ServiceName = "glacier"
authAws.Region = "us-west-2"

success = rest.SetAuthAws(authAws)

'  --------------------------------------------------------------------------
'  Note: The above REST connection and setup of the AWS credentials
'  can be done once.  After connecting, any number of REST calls can be made.
'  The "auto reconnect" property passed to rest.Connect indicates that if
'  the connection is lost, a REST method call will automatically reconnect
'  if needed.
'  --------------------------------------------------------------------------

'  For more information, see Glacier Add Tags to Vault Reference Documentation
'  
rest.AddHeader("x-amz-glacier-version", "2012-06-01")

'  Create the tags to be added.
Dim json As ChilkatJsonObject
json.Initialize
json.UpdateString("Tags.tagName1", "tagValue1")
json.UpdateString("Tags.tagName2", "tagValue2")
'  ...
'  ...

Dim sbRequestBody As ChilkatStringBuilder
sbRequestBody.Initialize
json.EmitSb(sbRequestBody)

'  Add tags to the vault named "chilkat"
Dim sbResponseBody As ChilkatStringBuilder
sbResponseBody.Initialize
success = rest.FullRequestSb("POST", "/AWS_ACCOUNT_ID/vaults/chilkat/tags?operation=add", sbRequestBody, sbResponseBody)
If success <> True Then
    Log(rest.LastErrorText)
    Return
End If


Dim respStatusCode As Int = rest.ResponseStatusCode
If respStatusCode >= 400 Then
    Log("Response Status Code = " & respStatusCode)
    Log("Response Header:")
    Log(rest.ResponseHeader)
    Log("Response Body:")
    Log(sbResponseBody.GetAsString)
    Return
End If


'  Success is indicated by a 204 response status with an empty response body.
Log("response status code = " & respStatusCode)