I noticed two things:
- According to API reference folder member in json encoded request body should be project or folder id represented by full urn. Something like this:
urn:adsk.wipprod:fs.folder:a.123456789
. It seems that you are sending only folder id part in your example.
- You mentioned that you are using OAuth token with
data:create
scope. You will need data:read
scope as well.
Documentation is a bit ambiguous about the scope. According to this tutorial data:read
is needed for all requests plus data:create
to create a hook. Reference mentions data:read
+ data:write
instead.
Just go with all three to be sure, at least till you make it work.
Update after Mandi's comment
Well, now I see that my answer is misleading. Projects do not have id in urn form. According to Webhooks Field Guide: "Please note that, for purpose of Webhooks, Projects are also identified by their Folder URN".
It is not completely clear from the documentation but it is probably project's root folder: data.relationships.rootFolder
in JSON data.
So if you check Project example object in Data Management Field Guide, id is probably here:
"rootFolder": {
"data": {
"type": "folders",
"id": "urn:adsk.wipprod:dm.folder:hC6k4hndRWaeIVhIjvHu8w"
},