Sample code for 30+ languages & platforms
Visual FoxPro

Delete a Google Cloud Storage Bucket

See more Google Cloud Storage Examples

Demonstrates how to delete a Google Cloud Storage bucket.

Chilkat Visual FoxPro Downloads

Visual FoxPro
LOCAL lnSuccess
LOCAL loSbToken
LOCAL loHttp
LOCAL lcUrl
LOCAL lcResponseBody
LOCAL lnResponseCode

lnSuccess = 0

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

*  This example uses a previously obtained access token having permission for the 
*  scope "https://www.googleapis.com/auth/cloud-platform"

*  In this example, Get Google Cloud Storage OAuth2 Access Token, 
*  the service account access token was saved to a text file.  This example fetches the access token from the file..
loSbToken = CreateObject('Chilkat.StringBuilder')
loSbToken.LoadFile("qa_data/tokens/googleCloudStorageAccessToken.txt","utf-8")

*  Send a DELETE equivalent to this curl command

*  curl -X DELETE -H "Authorization: Bearer [OAUTH2_TOKEN]" \
*      "https://www.googleapis.com/storage/v1/b/[BUCKET_NAME]"
*  
loHttp = CreateObject('Chilkat.Http')
loHttp.AuthToken = loSbToken.GetAsString()

loHttp.SetUrlVar("bucket_name","chilkat-ocean")
lcUrl = "https://www.googleapis.com/storage/v1/b/{$bucket_name}"

lcResponseBody = loHttp.QuickDeleteStr(lcUrl)
IF (loHttp.LastMethodSuccess = 0) THEN
    ? loHttp.LastErrorText
    RELEASE loSbToken
    RELEASE loHttp
    CANCEL
ENDIF

lnResponseCode = loHttp.LastStatus
IF (lnResponseCode = 401) THEN
    ? lcResponseBody
    ? "If invalid credentials, then it is likely the access token expired."
    ? "Your app should automatically fetch a new access token and re-try."
    RELEASE loSbToken
    RELEASE loHttp
    CANCEL
ENDIF

*  A 204 response code indicates success..
*  If not success, then examine the response code and response body..
IF (lnResponseCode <> 204) THEN
    ? "Response code: " + STR(lnResponseCode)
    ? "Response body"
    ? lcResponseBody
ELSE
    ? "Success."
ENDIF

RELEASE loSbToken
RELEASE loHttp