I want to create/update project in microsoft project online using some reference data. Is there REST API or SDK available? Especially for Java clients?
Asked
Active
Viewed 1.1k times
2 Answers
3
Yes project online provides REST API
Few examples -
1) Get All Projects information from Project Online
http://<pwa_site>/_api/ProjectData/Projects
2) Get Project GUID
http://<pwa_site>/_api/ProjectData/Projects/?$select=ProjectId
3) Get Specific Project information based on GUID
http://<pwa_site>/_api/ProjectData/Projects(guid'<GUID here>')
4) Get Assignment Information of a Project (Tasks Assigned)
http://<pwa_site>/_api/ProjectData/Projects(guid'<GUID here>')/Assignments
5) Get Assignments based on user
http://<pwa_site>/_api/ProjectData/Projects(guid'<GUID here>')/Assignments?
$filter=ResourceName eq '<Name>'
6) Get Tasks of a Project
http://<pwa_site>/_api/ProjectData/Projects(guid'<GUID here>')/Tasks

Mukesh Arora
- 1,763
- 2
- 8
- 19
-
1Where did you find that information? Does MS have documentation on that?? – Mikeez Aug 02 '19 at 18:48
-
No, MS does not have this documentation, in one of my project, my team needs to work on some feature which requires such APIS, then I found this information through a google search and it works well for our use case. – Mukesh Arora Aug 03 '19 at 06:34
-
Thank you, is there a way to import data dynamicly? – Mikeez Aug 05 '19 at 17:47
-
@Mikeez - Please elaborate your use case what do you mean by dynamically?. You can certainly call these APIs to get the data for specific or all the projects and import/upload in required storage. – Mukesh Arora Aug 06 '19 at 03:59
-
Per se, I would like to import all MS Project Online into MySQL directly and automatically. – Mikeez Aug 06 '19 at 04:45
-
1There is no out of the box feature for that, You need to build. You can write a backgroup process/service which will run on a schedule basis, fetch the data using APIs and upload in the MySQL in the desired structure. – Mukesh Arora Aug 06 '19 at 04:50
-
When you say fetch the data using APIs, you mean like a python script for example? – Mikeez Aug 06 '19 at 21:54
-
@Mikeez - Yes, in language python, Java , C# etc. which allow you to call rest api. – Mukesh Arora Aug 07 '19 at 03:55
3
In case anyone runs across this...the documentation for the Microsoft Project Online OData API is here: https://learn.microsoft.com/en-us/previous-versions/office/project-odata/jj163015(v=office.15)
It is a bit lacking but covers the 6 examples given by Mukesh Arora.

CJ van der Smissen
- 541
- 3
- 8