Sample code for 30+ languages & platforms
DataFlex

Delete a Google Cloud Storage Bucket

See more Google Cloud Storage Examples

Demonstrates how to delete a Google Cloud Storage bucket.

Chilkat DataFlex Downloads

DataFlex
Use ChilkatAx-win32.pkg

Procedure Test
    Boolean iSuccess
    Handle hoSbToken
    Handle hoHttp
    String sUrl
    String sResponseBody
    Integer iResponseCode
    String sTemp1
    Boolean bTemp1

    Move False To iSuccess

    // 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..
    Get Create (RefClass(cComChilkatStringBuilder)) To hoSbToken
    If (Not(IsComObjectCreated(hoSbToken))) Begin
        Send CreateComObject of hoSbToken
    End
    Get ComLoadFile Of hoSbToken "qa_data/tokens/googleCloudStorageAccessToken.txt" "utf-8" To iSuccess

    // 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]"
    // 
    Get Create (RefClass(cComChilkatHttp)) To hoHttp
    If (Not(IsComObjectCreated(hoHttp))) Begin
        Send CreateComObject of hoHttp
    End
    Get ComGetAsString Of hoSbToken To sTemp1
    Set ComAuthToken Of hoHttp To sTemp1

    Get ComSetUrlVar Of hoHttp "bucket_name" "chilkat-ocean" To iSuccess
    Move "https://www.googleapis.com/storage/v1/b/{$bucket_name}" To sUrl

    Get ComQuickDeleteStr Of hoHttp sUrl To sResponseBody
    Get ComLastMethodSuccess Of hoHttp To bTemp1
    If (bTemp1 = False) Begin
        Get ComLastErrorText Of hoHttp To sTemp1
        Showln sTemp1
        Procedure_Return
    End

    Get ComLastStatus Of hoHttp To iResponseCode
    If (iResponseCode = 401) Begin
        Showln sResponseBody
        Showln "If invalid credentials, then it is likely the access token expired."
        Showln "Your app should automatically fetch a new access token and re-try."
        Procedure_Return
    End

    // A 204 response code indicates success..
    // If not success, then examine the response code and response body..
    If (iResponseCode <> 204) Begin
        Showln "Response code: " iResponseCode
        Showln "Response body"
        Showln sResponseBody
    End
    Else Begin
        Showln "Success."
    End



End_Procedure