Jul 23 2018 01:39 AM - edited Nov 05 2018 12:27 AM
Azure Logic Apps and Flow feature a "Send an HTTP request to SharePoint" connector.
This helps a lot as it does the authentication against SharePoint for you and allows you to use the full REST API of Project Online.
The current Project Online connectors are limited and after two years still in preview. So with the HTTP connector you will have a lot of new possibilities to manipulate Project Online without writing too much code.
An intro to basic REST operations on Project Online can be found here:
https://github.com/OfficeDev/Project-REST-Basic-Operations
Link to the REST API documentation:
https://msdn.microsoft.com/en-us/library/office/jj712612.aspx
An example on how to change the project description:
Have fun building your workflows!
Apr 26 2019 02:53 AM - edited Apr 26 2019 06:45 AM
To update a project custom field you can use a similar REST endpoint:
Dont forget to check out you project before and check it in later on:
Nov 03 2020 03:18 PM
Hi @Trutz Stephani ,
I'm trying to do something so simple, and it is driving me crazy that I can't figure it out. All I want to do is use an HTTP Request to SharePoint to get the value of a Custom Field on a specific project in Project Online. Using your example, I'm able to GET all the regular information on a specific project (using the GUID), but how do you get to the custom fields? Any pointers you can share would be greatly appreciated!
Thanks kindly,
Leland
Nov 03 2020 11:06 PM
Hi @Doc0014
It's probably easier to retrieve custom field values using the OData endpoint <PWA-URL>/_api/ProjectData, e.g. <PWA-URL>/_api/ProjectData/Projects for project custom fields. This will provide the published values except for multiline text fields, the HTML formatting will be stripped.
Using the REST-Endpoint you should use the following URL: <PWA URL>/_api/ProjectServer/Projects(‘<Project GUID>‘)/IncludeCustomFields
This will bring the custom fields labelled by their internal id and for multiline text fields including the HTML-Formatting.
Nov 04 2020 08:32 AM
First, thanks @Trutz Stephani for the first posting and for replying. Your initial post was HUGELY helpful.
While waiting for your response, I ran across some other articles that were no where near as well written as yours, but had elements of the same answer you gave. I ended up finding that if you call .../_api/projectdata/Projects(guid'projectID') - that will return all the fields with the names you can use.
Interesting enough - if I tried to get that name via _api/projectserver route, it came back with an internal name like "Custom_xxxxxx....", which didn't work; an Id that was a Guid, which didn't work; and the friendly name (in this case "Landing Lead"), which of course didn't work.
But when I went via _api/projectdata it showed the name as "LandingLead" which worked perfectly.
Thought I would post this here in case others encounter the same thing. Hopefully, it makes there search easier and faster. :)