Sample code for 30+ languages & platforms
PureBasic

S3 Delete Multiple Objects

See more Amazon S3 Examples

Demonstrates how to delete multiple objects in a single HTTP request.

Chilkat PureBasic Downloads

PureBasic
IncludeFile "CkStringTable.pb"
IncludeFile "CkHttp.pb"
IncludeFile "CkHttpResponse.pb"

Procedure ChilkatExample()

    success.i = 0

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

    http.i = CkHttp::ckCreate()
    If http.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

    ; Insert your access key here:
    CkHttp::setCkAwsAccessKey(http, "ABQXXABC83ABCDEFVQXX")

    ; Insert your secret key here:
    CkHttp::setCkAwsSecretKey(http, "XXXXYYYYabcdABCD12345678xxxxyyyyzzzz")

    bucketName.s = "chilkattestbucket"

    objectName1.s = "starfish.jpg"
    ; Delete a particular version of this object:
    objectName2.s = "conch.jpg; VersionId=" + Chr(34) + "3/L4kqtJlcpXroDTDmJ+rmSpXd3dIbrHY+MTRCxf3vjVBH40Nr8X8gdRQBpUMLUo" + Chr(34)
    objectName3.s = "seaUrchin.jpg"

    st.i = CkStringTable::ckCreate()
    If st.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

    CkStringTable::ckAppend(st,objectName1)
    CkStringTable::ckAppend(st,objectName2)
    CkStringTable::ckAppend(st,objectName3)

    resp.i = CkHttpResponse::ckCreate()
    If resp.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

    success = CkHttp::ckS3_DeleteObjects(http,bucketName,st,resp)
    If success = 0
        Debug CkHttp::ckLastErrorText(http)
        CkHttp::ckDispose(http)
        CkStringTable::ckDispose(st)
        CkHttpResponse::ckDispose(resp)
        ProcedureReturn
    EndIf

    ; Display the JSON response.
    Debug CkHttpResponse::ckBodyStr(resp)


    CkHttp::ckDispose(http)
    CkStringTable::ckDispose(st)
    CkHttpResponse::ckDispose(resp)


    ProcedureReturn
EndProcedure