1

I am trying out the Sharepoint API, but I am having troubles deleting anything. GET Calls, Creating folders and uploading files works like a charm, but deleting stuff is giving me head aches. I tried following the doc (https://docs.microsoft.com/en-us/sharepoint/dev/sp-add-ins/working-with-folders-and-files-with-rest), but every time I do a DELETE Call on either a folder or a file I get the same Error Message:

I also couldn't find any information to this error code. The site itself was created by the same account which does the API calls, so there shouldn't be any Permission Issues, right?

Code (I am using the sharepy python Library):

p = s.delete("https://example.sharepoint.com/sites/Test-Site/_api/web/GetFolderByServerRelativeUrl('/sites/Test-Site/Freigegebene Dokumente/test/Test Schuelerin')")
data = p.json()
write_to_file(data, "delete_folder.json")

The API Call itself is just on the Folder via GetFolderByServerRelativeUrl() and the sharepy.delete() should be the same as adding "X-HTTP-METHOD": "DELETE" to the header and using a POST call (altough I also tried that and the outcome was the same).

{
  "error": {
    "code": "-2130575251, Microsoft.SharePoint.SPException",
    "message": {
      "lang": "de-DE",
      "value": "Die Sicherheits\u00fcberpr\u00fcfung f\u00fcr die Seite ist ung\u00fcltig und m\u00f6glicherweise fehlerhaft. Klicken Sie im Webbrowser auf die Schaltfl\u00e4che 'Zur\u00fcck', um den Vorgang zu wiederholen."
    }
  }
}

This is the error message I get (it's in german and says something along the lines of "The Security Check for this site is invalid and may contain errors")

3
  • Hi, Can you put here the rest api end point you are using or your code
    – Billy P
    Commented Nov 14, 2020 at 22:30
  • Code added... my bad
    – Gurki_1406
    Commented Nov 17, 2020 at 11:18
  • Have a look at this answer: sharepoint.stackexchange.com/a/239498/82748 Also be sure to include your tenant's root in the URLs "/sites/restofurl"... Commented Jan 18, 2022 at 16:34

1 Answer 1

0

Code on how to delete a folder for your reference:

   $.ajax({
                url: _spPageContextInfo.webAbsoluteUrl + "/_api/web/GetFolderByServerRelativeUrl('/Shared Documents/testfolder')",
                type: "POST",
                headers: {
                    "If-Match": "*",
                    "X-HTTP-Method": "DELETE",
                    "X-RequestDigest": $("#__REQUESTDIGEST").val()
                },
    
                success: function (data) {
                    console.log("success");
                }
            })
4
  • It seems like I am doing something pretty similar to what you are suggesting (but obviously in python and using sharepy). Do the If-Match and X-RequestDigest values matter much? If yes can you maybe explain what exactly they are doing?
    – Gurki_1406
    Commented Nov 17, 2020 at 11:21
  • Both Headers is important specially the X-RequestDigest, you can that in the context of the site as a protection that the request is valid and coming from the site
    – Billy P
    Commented Nov 17, 2020 at 18:09
  • This error should be an X-RequestDigest problem, but I am not familiar with python and can’t help you more.
    – Amos
    Commented Nov 18, 2020 at 9:38
  • Okay thanks. I already did some resarch on that X-RequestDigest field, but I will need some serious brain grease, because I probably have to tinker with the library I am using, so yeah great fun. But thanks for the tip, knowing where the error is is better than to wonder..
    – Gurki_1406
    Commented Nov 18, 2020 at 23:40

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.