Working in VBA.
The following V1 code works:
Sub DeleteFile(filename As String)
Dim req As MSXML2.ServerXMLHTTP60
Dim Result As String
Dim Pos1 As Integer
Dim Pos2 As Integer
Set req = New MSXML2.ServerXMLHTTP60
req.Open "POST", "https://api.dropboxapi.com/1/fileops/delete?path=" & "/" & filename & "&root=auto", False
req.setRequestHeader "Authorization", "Bearer ##########"
req.send
If req.Status = 200 Then
Debug.Print req.responseText
Else
MsgBox req.Status & ": " & req.statusText
Debug.Print req.responseText
End If
The following conversion to V2 does not work:
Sub DeleteFile2(filename As String)
Dim req As MSXML2.ServerXMLHTTP60
Dim Result As String
Dim Pos1 As Integer
Dim Pos2 As Integer
Set req = New MSXML2.ServerXMLHTTP60
Dim arg As String
arg = "{""path"": ""/" & filename & """}"
req.Open "POST", "https://api.dropboxapi.com/2/files/delete", False
req.setRequestHeader "Authorization", "Bearer ##########"
req.send (arg)
If req.Status = 200 Then
Debug.Print req.responseText
Else
MsgBox req.Status & ": " & req.statusText
Debug.Print req.responseText
End If
End Sub
The error I get is:
"Error in call to API function "files/delete": This function requires its argument in the HTTP request body, but your request body is empty."
Similar problem implementing other file functions.
Any ideas?