ProjectManagerSdk 152.0.138__tar.gz → 154.0.181__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {projectmanagersdk-152.0.138/src/ProjectManagerSdk.egg-info → projectmanagersdk-154.0.181}/PKG-INFO +1 -1
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/pyproject.toml +1 -1
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/__init__.py +10 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/meetingsclient.py +48 -23
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/nptclient.py +49 -28
- projectmanagersdk-154.0.181/src/ProjectManagerSdk/clients/nptstatusclient.py +116 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/projectclient.py +14 -17
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/resourceskillclient.py +3 -3
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/resourceteamclient.py +3 -3
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/riskclient.py +2 -2
- projectmanagersdk-154.0.181/src/ProjectManagerSdk/clients/securityclient.py +146 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/tagclient.py +20 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/taskstatusclient.py +9 -12
- projectmanagersdk-154.0.181/src/ProjectManagerSdk/models/businessroleslistdto.py +34 -0
- projectmanagersdk-154.0.181/src/ProjectManagerSdk/models/nptstatuscreatedto.py +43 -0
- projectmanagersdk-154.0.181/src/ProjectManagerSdk/models/nptstatusupdatedto.py +38 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/projectmemberdto.py +6 -0
- projectmanagersdk-154.0.181/src/ProjectManagerSdk/models/projectreopenstatusdto.py +34 -0
- projectmanagersdk-154.0.181/src/ProjectManagerSdk/models/rolecreatedto.py +50 -0
- projectmanagersdk-154.0.181/src/ProjectManagerSdk/models/roledto.py +78 -0
- projectmanagersdk-154.0.181/src/ProjectManagerSdk/models/rolepermissionfeaturedto.py +55 -0
- projectmanagersdk-154.0.181/src/ProjectManagerSdk/models/roleupdatechangeitemdto.py +41 -0
- projectmanagersdk-154.0.181/src/ProjectManagerSdk/models/simpletaskfieldvaluedto.py +60 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/tagupdatedto.py +8 -1
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/taskdetailsdto.py +15 -18
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/taskdto.py +15 -18
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/taskstatusupdatedto.py +0 -5
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/workspacepermissionsdto.py +2 -2
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/workspaceuserinfodto.py +2 -2
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/projectmanagerclient.py +4 -2
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181/src/ProjectManagerSdk.egg-info}/PKG-INFO +1 -1
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk.egg-info/SOURCES.txt +10 -0
- projectmanagersdk-152.0.138/src/ProjectManagerSdk/clients/nptstatusclient.py +0 -49
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/LICENSE +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/README.md +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/setup.cfg +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/__init__.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/apikeyclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/changesetclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/dashboardclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/discussionclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/fileclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/holidayclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/homefileclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/hourlyrateclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/hourlyrateperiodclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/integrationcategoryclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/integrationclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/integrationproviderclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/licenseclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/meclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/meetingtagclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/meetingtodosclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/notificationclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/nptdiscussionclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/nptfilesclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/nptrecurrencyclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/npttagclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/npttodosclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/projectchargecodeclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/projectcustomerclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/projectfieldclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/projectfileclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/projectfolderclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/projectmembersclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/projectpriorityclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/projectstatusclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/projecttemplateclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/projectversionclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/resourceclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/riskfileclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/risktagclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/taskassigneeclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/taskclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/taskfieldclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/taskfileclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/taskmetadataclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/taskrecurrencyclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/tasktagclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/tasktodoclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/teamsclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/timesheetclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/userroleclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/clients/workspaceclient.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/__init__.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/apikeycreatedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/apikeydto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/assigneedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/assigneeupsertdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/astroerror.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/astroresult.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/authenticationdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/changesetstatusdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/connectionschemadto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/countrydto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/countryholidaydto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/createresourceskilldto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/createresourceteamdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/createtaskfielddto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/dailyrecurringsettingsdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/dashboardsettingcreatedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/dashboardsettingdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/deletedtasksdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/discussioncommentcreatedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/discussioncommentcreateresponsedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/discussioncommentdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/discussioncommentfiledto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/discussiondatadto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/discussionemoji.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/exportdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/exportduedatefilterdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/exportpriorityfilterdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/filedatadto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/filedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/globalholidaydto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/hourlyratecreatedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/hourlyratedetailsdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/hourlyratedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/hourlyrateperiodcreatedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/hourlyrateperioddto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/hourlyratevaluedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/hourlyratevalueupdatedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/iddto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/integrationauthsetupdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/integrationcategorydto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/integrationconnectionschemeobjectdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/integrationdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/integrationinstancedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/integrationproviderdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/licensedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/masterconnectionschemedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/meetingassigneedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/meetingcreatedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/meetingdetailsdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/meetingdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/meetingprojectdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/meetingtodocreatedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/meetingtododto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/meetingtodoupdatedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/meetingupdatedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/monthlyrecurringsettingsdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/namedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/notificationdatadto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/notificationdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/notificationresponsedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/notificationtimestampdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/notificationtotalcountdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/notificationunreadcountdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/nptassigneedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/nptcreatedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/nptdetailsdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/nptdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/nptstatusdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/nptupdatedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/partialresourcedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/pendingtimesheetapprovaldto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/permissionoptionsdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/projectaccessdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/projectaccessentrydto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/projectchangestatusdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/projectchargecodecreatedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/projectchargecodedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/projectchargecodeupdatedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/projectcreateaccessdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/projectcreateaccessmemberdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/projectcreatedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/projectcustomercreatedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/projectcustomerdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/projectdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/projectfieldcreatedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/projectfielddto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/projectfieldvaluedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/projectfiledto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/projectfilefolderdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/projectfiletaskdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/projectfoldercreatedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/projectfolderdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/projectfolderupdatedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/projectmanagerdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/projectmemberroledto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/projectmembersaccessdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/projectprioritycreatedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/projectprioritydto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/projectrestoreprojectdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/projectstatuscreatedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/projectstatusdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/projectstatusupdatedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/projecttemplatecategorydto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/projecttemplatedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/projectupdatedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/projectversionchangedatadto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/projectversiondto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/projectworkingdaysdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/reactgridlayoutdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/reactgridlayoutitemdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/recurringtaskchangesetdetails.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/recurringtaskchangesetdetailschangesetstatusdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/recurringtasksettingsdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/recurringtaskvalidationresultdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/resourceapproverdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/resourcecreatedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/resourcedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/resourceholidaydto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/resourcescreatedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/resourcesdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/resourceskilldto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/resourceteamdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/resourceupdatedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/riskassignmentdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/riskcreatedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/riskdetailsdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/riskdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/riskexportprogressfilterdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/riskexportsettingsdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/riskprojectdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/riskupdatedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/statedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/tagcreatedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/tagdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/taskapprovalstatusupdatedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/taskassigneedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/taskcreatedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/taskfielddto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/taskfieldprojectdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/taskfieldvaluedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/taskfieldvaluetaskdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/taskfiledto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/taskmetadatasearchdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/taskmetadataupdatedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/taskownerdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/taskprioritydto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/taskprojectdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/taskreferencedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/taskstatuscreatedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/taskstatusdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/tasktagdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/tasktodocreatedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/tasktododto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/tasktodoupdatedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/taskupdatedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/timesheetadmintypedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/timesheetapprovaldto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/timesheetapprovalrejectdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/timesheetapprovalresponsedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/timesheetcreaterequestdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/timesheetdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/timesheetfiledto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/timesheetfileresponsedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/timesheetprojectdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/timesheetresourcedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/timesheetresponsedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/timesheettaskdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/timesheetupdaterequestdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/updateprojectfielddto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/updateprojectfieldvaluedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/updaterequestdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/updateresourceskilldto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/updateresourceteamdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/updatetaskfieldvaluedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/usererror.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/userroledto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/userrolepermissiondto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/userrolepermissionsdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/weeklyrecurringsettingsdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/workspacedto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/workspacelinksdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/models/yearlyrecurringsettingsdto.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/tools.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk.egg-info/dependency_links.txt +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk.egg-info/requires.txt +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk.egg-info/top_level.txt +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/test/test_basic.py +0 -0
- {projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/test/test_dacite_parsing.py +0 -0
{projectmanagersdk-152.0.138/src/ProjectManagerSdk.egg-info → projectmanagersdk-154.0.181}/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: ProjectManagerSdk
|
|
3
|
-
Version:
|
|
3
|
+
Version: 154.0.181
|
|
4
4
|
Summary: Software development kit for the ProjectManager.com API for Python
|
|
5
5
|
Author-email: "ProjectManager.com" <support@projectmanager.com>
|
|
6
6
|
Project-URL: Homepage, https://github.com/projectmgr/projectmanager-sdk-python
|
{projectmanagersdk-152.0.138 → projectmanagersdk-154.0.181}/src/ProjectManagerSdk/__init__.py
RENAMED
|
@@ -44,6 +44,7 @@ from ProjectManagerSdk.clients.resourceteamclient import ResourceTeamClient
|
|
|
44
44
|
from ProjectManagerSdk.clients.riskclient import RiskClient
|
|
45
45
|
from ProjectManagerSdk.clients.riskfileclient import RiskFileClient
|
|
46
46
|
from ProjectManagerSdk.clients.risktagclient import RiskTagClient
|
|
47
|
+
from ProjectManagerSdk.clients.securityclient import SecurityClient
|
|
47
48
|
from ProjectManagerSdk.clients.tagclient import TagClient
|
|
48
49
|
from ProjectManagerSdk.clients.taskassigneeclient import TaskAssigneeClient
|
|
49
50
|
from ProjectManagerSdk.clients.taskclient import TaskClient
|
|
@@ -66,6 +67,7 @@ from ProjectManagerSdk.models.assigneeupsertdto import AssigneeUpsertDto
|
|
|
66
67
|
from ProjectManagerSdk.models.astroerror import AstroError
|
|
67
68
|
from ProjectManagerSdk.models.astroresult import AstroResult
|
|
68
69
|
from ProjectManagerSdk.models.authenticationdto import AuthenticationDto
|
|
70
|
+
from ProjectManagerSdk.models.businessroleslistdto import BusinessRolesListDto
|
|
69
71
|
from ProjectManagerSdk.models.changesetstatusdto import ChangeSetStatusDto
|
|
70
72
|
from ProjectManagerSdk.models.connectionschemadto import ConnectionSchemaDto
|
|
71
73
|
from ProjectManagerSdk.models.countrydto import CountryDto
|
|
@@ -126,7 +128,9 @@ from ProjectManagerSdk.models.nptassigneedto import NptAssigneeDto
|
|
|
126
128
|
from ProjectManagerSdk.models.nptcreatedto import NptCreateDto
|
|
127
129
|
from ProjectManagerSdk.models.nptdetailsdto import NptDetailsDto
|
|
128
130
|
from ProjectManagerSdk.models.nptdto import NptDto
|
|
131
|
+
from ProjectManagerSdk.models.nptstatuscreatedto import NptStatusCreateDto
|
|
129
132
|
from ProjectManagerSdk.models.nptstatusdto import NptStatusDto
|
|
133
|
+
from ProjectManagerSdk.models.nptstatusupdatedto import NptStatusUpdateDto
|
|
130
134
|
from ProjectManagerSdk.models.nptupdatedto import NptUpdateDto
|
|
131
135
|
from ProjectManagerSdk.models.partialresourcedto import PartialResourceDto
|
|
132
136
|
from ProjectManagerSdk.models.pendingtimesheetapprovaldto import PendingTimeSheetApprovalDto
|
|
@@ -158,6 +162,7 @@ from ProjectManagerSdk.models.projectmemberroledto import ProjectMemberRoleDto
|
|
|
158
162
|
from ProjectManagerSdk.models.projectmembersaccessdto import ProjectMembersAccessDto
|
|
159
163
|
from ProjectManagerSdk.models.projectprioritycreatedto import ProjectPriorityCreateDto
|
|
160
164
|
from ProjectManagerSdk.models.projectprioritydto import ProjectPriorityDto
|
|
165
|
+
from ProjectManagerSdk.models.projectreopenstatusdto import ProjectReopenStatusDto
|
|
161
166
|
from ProjectManagerSdk.models.projectrestoreprojectdto import ProjectRestoreProjectDto
|
|
162
167
|
from ProjectManagerSdk.models.projectstatuscreatedto import ProjectStatusCreateDto
|
|
163
168
|
from ProjectManagerSdk.models.projectstatusdto import ProjectStatusDto
|
|
@@ -191,6 +196,11 @@ from ProjectManagerSdk.models.riskexportprogressfilterdto import RiskExportProgr
|
|
|
191
196
|
from ProjectManagerSdk.models.riskexportsettingsdto import RiskExportSettingsDto
|
|
192
197
|
from ProjectManagerSdk.models.riskprojectdto import RiskProjectDto
|
|
193
198
|
from ProjectManagerSdk.models.riskupdatedto import RiskUpdateDto
|
|
199
|
+
from ProjectManagerSdk.models.rolecreatedto import RoleCreateDto
|
|
200
|
+
from ProjectManagerSdk.models.roledto import RoleDto
|
|
201
|
+
from ProjectManagerSdk.models.rolepermissionfeaturedto import RolePermissionFeatureDto
|
|
202
|
+
from ProjectManagerSdk.models.roleupdatechangeitemdto import RoleUpdateChangeItemDto
|
|
203
|
+
from ProjectManagerSdk.models.simpletaskfieldvaluedto import SimpleTaskFieldValueDto
|
|
194
204
|
from ProjectManagerSdk.models.statedto import StateDto
|
|
195
205
|
from ProjectManagerSdk.models.tagcreatedto import TagCreateDto
|
|
196
206
|
from ProjectManagerSdk.models.tagdto import TagDto
|
|
@@ -39,6 +39,54 @@ class MeetingsClient:
|
|
|
39
39
|
def __init__(self, client: ProjectManagerClient):
|
|
40
40
|
self.client = client
|
|
41
41
|
|
|
42
|
+
def get_meetings(self, projectId: str) -> AstroResult[List[MeetingDto]]:
|
|
43
|
+
"""
|
|
44
|
+
Retrieve a list of Meetings. This endpoint does not use OData.
|
|
45
|
+
If `projectId` is provided, results are limited to that Project.
|
|
46
|
+
|
|
47
|
+
Parameters
|
|
48
|
+
----------
|
|
49
|
+
projectId : str
|
|
50
|
+
Optional project id to scope results
|
|
51
|
+
"""
|
|
52
|
+
path = "/api/data/meetings"
|
|
53
|
+
queryParams = {}
|
|
54
|
+
if projectId:
|
|
55
|
+
queryParams['projectId'] = projectId
|
|
56
|
+
result = self.client.send_request("GET", path, None, queryParams, None)
|
|
57
|
+
if result.status_code >= 200 and result.status_code < 300:
|
|
58
|
+
data = []
|
|
59
|
+
for dict in json.loads(result.content)['data']:
|
|
60
|
+
data.append(dacite.from_dict(data_class=MeetingDto, data=dict))
|
|
61
|
+
return AstroResult[List[MeetingDto]](None, True, False, result.status_code, data)
|
|
62
|
+
else:
|
|
63
|
+
response = AstroResult[List[MeetingDto]](None, False, True, result.status_code, None)
|
|
64
|
+
response.load_error(result)
|
|
65
|
+
return response
|
|
66
|
+
|
|
67
|
+
def create_meeting(self, body: MeetingCreateDto) -> AstroResult[MeetingDto]:
|
|
68
|
+
"""
|
|
69
|
+
Creates a new Meeting for the current user. If you specify an
|
|
70
|
+
assignee for this Meeting, that user will be assigned to it. If
|
|
71
|
+
you do not specify an assignee, the Meeting will be
|
|
72
|
+
automatically assigned to you.
|
|
73
|
+
|
|
74
|
+
Parameters
|
|
75
|
+
----------
|
|
76
|
+
body : MeetingCreateDto
|
|
77
|
+
The data used to create the Meeting
|
|
78
|
+
"""
|
|
79
|
+
path = "/api/data/meetings"
|
|
80
|
+
queryParams = {}
|
|
81
|
+
result = self.client.send_request("POST", path, remove_empty_elements(dataclasses.asdict(body)), queryParams, None)
|
|
82
|
+
if result.status_code >= 200 and result.status_code < 300:
|
|
83
|
+
data = dacite.from_dict(data_class=MeetingDto, data=json.loads(result.content)['data'])
|
|
84
|
+
return AstroResult[MeetingDto](None, True, False, result.status_code, data)
|
|
85
|
+
else:
|
|
86
|
+
response = AstroResult[MeetingDto](None, False, True, result.status_code, None)
|
|
87
|
+
response.load_error(result)
|
|
88
|
+
return response
|
|
89
|
+
|
|
42
90
|
def get_meeting(self, meetingId: str) -> AstroResult[MeetingDetailsDto]:
|
|
43
91
|
"""
|
|
44
92
|
Retrieve a Meeting by its unique identifier or by its short ID.
|
|
@@ -104,29 +152,6 @@ class MeetingsClient:
|
|
|
104
152
|
response.load_error(result)
|
|
105
153
|
return response
|
|
106
154
|
|
|
107
|
-
def create_meeting(self, body: MeetingCreateDto) -> AstroResult[MeetingDto]:
|
|
108
|
-
"""
|
|
109
|
-
Creates a new Meeting for the current user. If you specify an
|
|
110
|
-
assignee for this Meeting, that user will be assigned to it. If
|
|
111
|
-
you do not specify an assignee, the Meeting will be
|
|
112
|
-
automatically assigned to you.
|
|
113
|
-
|
|
114
|
-
Parameters
|
|
115
|
-
----------
|
|
116
|
-
body : MeetingCreateDto
|
|
117
|
-
The data used to create the Meeting
|
|
118
|
-
"""
|
|
119
|
-
path = "/api/data/meetings"
|
|
120
|
-
queryParams = {}
|
|
121
|
-
result = self.client.send_request("POST", path, remove_empty_elements(dataclasses.asdict(body)), queryParams, None)
|
|
122
|
-
if result.status_code >= 200 and result.status_code < 300:
|
|
123
|
-
data = dacite.from_dict(data_class=MeetingDto, data=json.loads(result.content)['data'])
|
|
124
|
-
return AstroResult[MeetingDto](None, True, False, result.status_code, data)
|
|
125
|
-
else:
|
|
126
|
-
response = AstroResult[MeetingDto](None, False, True, result.status_code, None)
|
|
127
|
-
response.load_error(result)
|
|
128
|
-
return response
|
|
129
|
-
|
|
130
155
|
def create_weekly_recurring_meetings(self, meetingId: str, body: WeeklyRecurringSettingsDto) -> AstroResult[RecurringTaskChangeSetDetails]:
|
|
131
156
|
"""
|
|
132
157
|
Changes an existing Non-Project Task into a Recurring Task, so
|
|
@@ -31,6 +31,55 @@ class NptClient:
|
|
|
31
31
|
def __init__(self, client: ProjectManagerClient):
|
|
32
32
|
self.client = client
|
|
33
33
|
|
|
34
|
+
def get_npts(self) -> AstroResult[List[NptDto]]:
|
|
35
|
+
"""
|
|
36
|
+
Retrieve a list of Non-Project Tasks (NPTs). This endpoint does
|
|
37
|
+
not use OData.
|
|
38
|
+
|
|
39
|
+
Parameters
|
|
40
|
+
----------
|
|
41
|
+
"""
|
|
42
|
+
path = "/api/data/non-project-tasks"
|
|
43
|
+
queryParams = {}
|
|
44
|
+
result = self.client.send_request("GET", path, None, queryParams, None)
|
|
45
|
+
if result.status_code >= 200 and result.status_code < 300:
|
|
46
|
+
data = []
|
|
47
|
+
for dict in json.loads(result.content)['data']:
|
|
48
|
+
data.append(dacite.from_dict(data_class=NptDto, data=dict))
|
|
49
|
+
return AstroResult[List[NptDto]](None, True, False, result.status_code, data)
|
|
50
|
+
else:
|
|
51
|
+
response = AstroResult[List[NptDto]](None, False, True, result.status_code, None)
|
|
52
|
+
response.load_error(result)
|
|
53
|
+
return response
|
|
54
|
+
|
|
55
|
+
def create_npt(self, body: NptCreateDto) -> AstroResult[NptDto]:
|
|
56
|
+
"""
|
|
57
|
+
Creates a new Non-Project Task (NPT) for the current user. If
|
|
58
|
+
you specify an assignee for this NPT, that user will be assigned
|
|
59
|
+
to this task. If you do not specify an assignee, the NPT will be
|
|
60
|
+
automatically assigned to you. A Non-Project Task (NPT) is an
|
|
61
|
+
individual element of work that is outside of a project. Many
|
|
62
|
+
people use NPTs to track personal work or general administrative
|
|
63
|
+
work. NPTs have nearly all the same features as other tasks, but
|
|
64
|
+
since they are not part of a project, they can be tracked
|
|
65
|
+
separately by individuals.
|
|
66
|
+
|
|
67
|
+
Parameters
|
|
68
|
+
----------
|
|
69
|
+
body : NptCreateDto
|
|
70
|
+
The data used to create the Npt
|
|
71
|
+
"""
|
|
72
|
+
path = "/api/data/non-project-tasks"
|
|
73
|
+
queryParams = {}
|
|
74
|
+
result = self.client.send_request("POST", path, remove_empty_elements(dataclasses.asdict(body)), queryParams, None)
|
|
75
|
+
if result.status_code >= 200 and result.status_code < 300:
|
|
76
|
+
data = dacite.from_dict(data_class=NptDto, data=json.loads(result.content)['data'])
|
|
77
|
+
return AstroResult[NptDto](None, True, False, result.status_code, data)
|
|
78
|
+
else:
|
|
79
|
+
response = AstroResult[NptDto](None, False, True, result.status_code, None)
|
|
80
|
+
response.load_error(result)
|
|
81
|
+
return response
|
|
82
|
+
|
|
34
83
|
def get_npt(self, nptId: str) -> AstroResult[NptDetailsDto]:
|
|
35
84
|
"""
|
|
36
85
|
Retrieve a Non-Project Task (NPT) by its unique identifier or by
|
|
@@ -114,31 +163,3 @@ class NptClient:
|
|
|
114
163
|
response = AstroResult[object](None, False, True, result.status_code, None)
|
|
115
164
|
response.load_error(result)
|
|
116
165
|
return response
|
|
117
|
-
|
|
118
|
-
def create_npt(self, body: NptCreateDto) -> AstroResult[NptDto]:
|
|
119
|
-
"""
|
|
120
|
-
Creates a new Non-Project Task (NPT) for the current user. If
|
|
121
|
-
you specify an assignee for this NPT, that user will be assigned
|
|
122
|
-
to this task. If you do not specify an assignee, the NPT will be
|
|
123
|
-
automatically assigned to you. A Non-Project Task (NPT) is an
|
|
124
|
-
individual element of work that is outside of a project. Many
|
|
125
|
-
people use NPTs to track personal work or general administrative
|
|
126
|
-
work. NPTs have nearly all the same features as other tasks, but
|
|
127
|
-
since they are not part of a project, they can be tracked
|
|
128
|
-
separately by individuals.
|
|
129
|
-
|
|
130
|
-
Parameters
|
|
131
|
-
----------
|
|
132
|
-
body : NptCreateDto
|
|
133
|
-
The data used to create the Npt
|
|
134
|
-
"""
|
|
135
|
-
path = "/api/data/non-project-tasks"
|
|
136
|
-
queryParams = {}
|
|
137
|
-
result = self.client.send_request("POST", path, remove_empty_elements(dataclasses.asdict(body)), queryParams, None)
|
|
138
|
-
if result.status_code >= 200 and result.status_code < 300:
|
|
139
|
-
data = dacite.from_dict(data_class=NptDto, data=json.loads(result.content)['data'])
|
|
140
|
-
return AstroResult[NptDto](None, True, False, result.status_code, data)
|
|
141
|
-
else:
|
|
142
|
-
response = AstroResult[NptDto](None, False, True, result.status_code, None)
|
|
143
|
-
response.load_error(result)
|
|
144
|
-
return response
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
#
|
|
2
|
+
# ProjectManager API for Python
|
|
3
|
+
#
|
|
4
|
+
# (c) ProjectManager.com, Inc.
|
|
5
|
+
#
|
|
6
|
+
# For the full copyright and license information, please view the LICENSE
|
|
7
|
+
# file that was distributed with this source code.
|
|
8
|
+
#
|
|
9
|
+
# @author ProjectManager.com <support@projectmanager.com>
|
|
10
|
+
# @copyright ProjectManager.com, Inc.
|
|
11
|
+
# @link https://github.com/projectmgr/projectmanager-sdk-python
|
|
12
|
+
#
|
|
13
|
+
|
|
14
|
+
from ProjectManagerSdk.models.astroresult import AstroResult
|
|
15
|
+
from ProjectManagerSdk.models.nptstatuscreatedto import NptStatusCreateDto
|
|
16
|
+
from ProjectManagerSdk.models.nptstatusdto import NptStatusDto
|
|
17
|
+
from ProjectManagerSdk.models.nptstatusupdatedto import NptStatusUpdateDto
|
|
18
|
+
from typing import List
|
|
19
|
+
from ProjectManagerSdk.tools import remove_empty_elements
|
|
20
|
+
import dataclasses
|
|
21
|
+
import json
|
|
22
|
+
import dacite
|
|
23
|
+
|
|
24
|
+
class NptStatusClient:
|
|
25
|
+
"""
|
|
26
|
+
API methods related to NptStatus
|
|
27
|
+
"""
|
|
28
|
+
from ProjectManagerSdk.projectmanagerclient import ProjectManagerClient
|
|
29
|
+
|
|
30
|
+
def __init__(self, client: ProjectManagerClient):
|
|
31
|
+
self.client = client
|
|
32
|
+
|
|
33
|
+
def get_npt_task_statuses(self) -> AstroResult[List[NptStatusDto]]:
|
|
34
|
+
"""
|
|
35
|
+
Get a list of task statuses that can be used by non-protect
|
|
36
|
+
tasks.
|
|
37
|
+
|
|
38
|
+
Parameters
|
|
39
|
+
----------
|
|
40
|
+
"""
|
|
41
|
+
path = "/api/data/non-project-tasks/statuses"
|
|
42
|
+
queryParams = {}
|
|
43
|
+
result = self.client.send_request("GET", path, None, queryParams, None)
|
|
44
|
+
if result.status_code >= 200 and result.status_code < 300:
|
|
45
|
+
data = []
|
|
46
|
+
for dict in json.loads(result.content)['data']:
|
|
47
|
+
data.append(dacite.from_dict(data_class=NptStatusDto, data=dict))
|
|
48
|
+
return AstroResult[List[NptStatusDto]](None, True, False, result.status_code, data)
|
|
49
|
+
else:
|
|
50
|
+
response = AstroResult[List[NptStatusDto]](None, False, True, result.status_code, None)
|
|
51
|
+
response.load_error(result)
|
|
52
|
+
return response
|
|
53
|
+
|
|
54
|
+
def create_npt_task_status(self, body: NptStatusCreateDto) -> AstroResult[NptStatusDto]:
|
|
55
|
+
"""
|
|
56
|
+
Creates a new status level for non-project tasks.
|
|
57
|
+
|
|
58
|
+
Parameters
|
|
59
|
+
----------
|
|
60
|
+
body : NptStatusCreateDto
|
|
61
|
+
Information about the new status level to create
|
|
62
|
+
"""
|
|
63
|
+
path = "/api/data/non-project-tasks/statuses"
|
|
64
|
+
queryParams = {}
|
|
65
|
+
result = self.client.send_request("POST", path, remove_empty_elements(dataclasses.asdict(body)), queryParams, None)
|
|
66
|
+
if result.status_code >= 200 and result.status_code < 300:
|
|
67
|
+
data = dacite.from_dict(data_class=NptStatusDto, data=json.loads(result.content)['data'])
|
|
68
|
+
return AstroResult[NptStatusDto](None, True, False, result.status_code, data)
|
|
69
|
+
else:
|
|
70
|
+
response = AstroResult[NptStatusDto](None, False, True, result.status_code, None)
|
|
71
|
+
response.load_error(result)
|
|
72
|
+
return response
|
|
73
|
+
|
|
74
|
+
def update_npt_task_status(self, nptStatusId: str, body: NptStatusUpdateDto) -> AstroResult[NptStatusDto]:
|
|
75
|
+
"""
|
|
76
|
+
Updates an existing status level for non-project tasks.
|
|
77
|
+
|
|
78
|
+
Parameters
|
|
79
|
+
----------
|
|
80
|
+
nptStatusId : str
|
|
81
|
+
The unique identifier of the status to update
|
|
82
|
+
body : NptStatusUpdateDto
|
|
83
|
+
Information about the status level to update
|
|
84
|
+
"""
|
|
85
|
+
path = f"/api/data/non-project-tasks/statuses/{nptStatusId}"
|
|
86
|
+
queryParams = {}
|
|
87
|
+
result = self.client.send_request("PUT", path, remove_empty_elements(dataclasses.asdict(body)), queryParams, None)
|
|
88
|
+
if result.status_code >= 200 and result.status_code < 300:
|
|
89
|
+
data = dacite.from_dict(data_class=NptStatusDto, data=json.loads(result.content)['data'])
|
|
90
|
+
return AstroResult[NptStatusDto](None, True, False, result.status_code, data)
|
|
91
|
+
else:
|
|
92
|
+
response = AstroResult[NptStatusDto](None, False, True, result.status_code, None)
|
|
93
|
+
response.load_error(result)
|
|
94
|
+
return response
|
|
95
|
+
|
|
96
|
+
def delete_npt_task_status(self, nptStatusId: str) -> AstroResult[object]:
|
|
97
|
+
"""
|
|
98
|
+
Deletes an existing status level for non-project tasks. You will
|
|
99
|
+
not be able to delete a status if there are tasks assigned to it
|
|
100
|
+
or if it is the default status level.
|
|
101
|
+
|
|
102
|
+
Parameters
|
|
103
|
+
----------
|
|
104
|
+
nptStatusId : str
|
|
105
|
+
The unique identifier of the status to delete
|
|
106
|
+
"""
|
|
107
|
+
path = f"/api/data/non-project-tasks/statuses/{nptStatusId}"
|
|
108
|
+
queryParams = {}
|
|
109
|
+
result = self.client.send_request("DELETE", path, None, queryParams, None)
|
|
110
|
+
if result.status_code >= 200 and result.status_code < 300:
|
|
111
|
+
data = dacite.from_dict(data_class=object, data=json.loads(result.content)['data'])
|
|
112
|
+
return AstroResult[object](None, True, False, result.status_code, data)
|
|
113
|
+
else:
|
|
114
|
+
response = AstroResult[object](None, False, True, result.status_code, None)
|
|
115
|
+
response.load_error(result)
|
|
116
|
+
return response
|
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
from ProjectManagerSdk.models.astroresult import AstroResult
|
|
15
15
|
from ProjectManagerSdk.models.projectcreatedto import ProjectCreateDto
|
|
16
16
|
from ProjectManagerSdk.models.projectdto import ProjectDto
|
|
17
|
+
from ProjectManagerSdk.models.projectreopenstatusdto import ProjectReopenStatusDto
|
|
17
18
|
from ProjectManagerSdk.models.projectupdatedto import ProjectUpdateDto
|
|
18
19
|
from typing import List
|
|
19
20
|
from ProjectManagerSdk.tools import remove_empty_elements
|
|
@@ -131,11 +132,7 @@ class ProjectClient:
|
|
|
131
132
|
towards a goal. Within a Project, Tasks represent individual
|
|
132
133
|
items of work that team members must complete. The sum total of
|
|
133
134
|
Tasks within a Project represents the work to be completed for
|
|
134
|
-
that Project.
|
|
135
|
-
time. When you call an API to update an object, this call is
|
|
136
|
-
converted into a Changeset that is then applied sequentially.
|
|
137
|
-
You can use RetrieveChangeset to see the status of an individual
|
|
138
|
-
Changeset.
|
|
135
|
+
that Project.
|
|
139
136
|
|
|
140
137
|
Parameters
|
|
141
138
|
----------
|
|
@@ -184,26 +181,26 @@ class ProjectClient:
|
|
|
184
181
|
response.load_error(result)
|
|
185
182
|
return response
|
|
186
183
|
|
|
187
|
-
def
|
|
184
|
+
def reopen_project_status(self, projectId: str) -> AstroResult[ProjectReopenStatusDto]:
|
|
188
185
|
"""
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
186
|
+
Check if a project is in a valid state so that it can be
|
|
187
|
+
reopened without any side effects. For example, if Rates have
|
|
188
|
+
changed for this project, reopening it will result is project
|
|
189
|
+
costs being recalculated which will adjust costs. This endpoint
|
|
190
|
+
will return what side effects may occur if it is reopened.
|
|
194
191
|
|
|
195
192
|
Parameters
|
|
196
193
|
----------
|
|
197
194
|
projectId : str
|
|
198
|
-
The unique identifier of the
|
|
195
|
+
The unique identifier of the project to check.
|
|
199
196
|
"""
|
|
200
|
-
path = f"/api/data/projects/{projectId}/
|
|
197
|
+
path = f"/api/data/projects/{projectId}/reopen/status"
|
|
201
198
|
queryParams = {}
|
|
202
|
-
result = self.client.send_request("
|
|
199
|
+
result = self.client.send_request("GET", path, None, queryParams, None)
|
|
203
200
|
if result.status_code >= 200 and result.status_code < 300:
|
|
204
|
-
data = dacite.from_dict(data_class=
|
|
205
|
-
return AstroResult[
|
|
201
|
+
data = dacite.from_dict(data_class=ProjectReopenStatusDto, data=json.loads(result.content)['data'])
|
|
202
|
+
return AstroResult[ProjectReopenStatusDto](None, True, False, result.status_code, data)
|
|
206
203
|
else:
|
|
207
|
-
response = AstroResult[
|
|
204
|
+
response = AstroResult[ProjectReopenStatusDto](None, False, True, result.status_code, None)
|
|
208
205
|
response.load_error(result)
|
|
209
206
|
return response
|
|
@@ -97,18 +97,18 @@ class ResourceSkillClient:
|
|
|
97
97
|
response.load_error(result)
|
|
98
98
|
return response
|
|
99
99
|
|
|
100
|
-
def update_resource_skill(self,
|
|
100
|
+
def update_resource_skill(self, resourceSkillId: str, body: UpdateResourceSkillDto) -> AstroResult[ResourceSkillDto]:
|
|
101
101
|
"""
|
|
102
102
|
Update a Resource Skill.
|
|
103
103
|
|
|
104
104
|
Parameters
|
|
105
105
|
----------
|
|
106
|
-
|
|
106
|
+
resourceSkillId : str
|
|
107
107
|
The id of the skill to update.
|
|
108
108
|
body : UpdateResourceSkillDto
|
|
109
109
|
The data of the skill to update.
|
|
110
110
|
"""
|
|
111
|
-
path = f"/api/data/resources/skills/{
|
|
111
|
+
path = f"/api/data/resources/skills/{resourceSkillId}"
|
|
112
112
|
queryParams = {}
|
|
113
113
|
result = self.client.send_request("PUT", path, remove_empty_elements(dataclasses.asdict(body)), queryParams, None)
|
|
114
114
|
if result.status_code >= 200 and result.status_code < 300:
|
|
@@ -117,18 +117,18 @@ class ResourceTeamClient:
|
|
|
117
117
|
response.load_error(result)
|
|
118
118
|
return response
|
|
119
119
|
|
|
120
|
-
def update_resource_team(self,
|
|
120
|
+
def update_resource_team(self, resourceTeamId: str, body: UpdateResourceTeamDto) -> AstroResult[ResourceTeamDto]:
|
|
121
121
|
"""
|
|
122
122
|
Update a Resource Team.
|
|
123
123
|
|
|
124
124
|
Parameters
|
|
125
125
|
----------
|
|
126
|
-
|
|
126
|
+
resourceTeamId : str
|
|
127
127
|
The id of the resource team
|
|
128
128
|
body : UpdateResourceTeamDto
|
|
129
129
|
The name of the team to Update.
|
|
130
130
|
"""
|
|
131
|
-
path = f"/api/data/resources/teams/{
|
|
131
|
+
path = f"/api/data/resources/teams/{resourceTeamId}"
|
|
132
132
|
queryParams = {}
|
|
133
133
|
result = self.client.send_request("PUT", path, remove_empty_elements(dataclasses.asdict(body)), queryParams, None)
|
|
134
134
|
if result.status_code >= 200 and result.status_code < 300:
|
|
@@ -129,7 +129,7 @@ class RiskClient:
|
|
|
129
129
|
response.load_error(result)
|
|
130
130
|
return response
|
|
131
131
|
|
|
132
|
-
def
|
|
132
|
+
def create_project_risk(self, projectId: str, body: RiskCreateDto) -> AstroResult[RiskDto]:
|
|
133
133
|
"""
|
|
134
134
|
Creates a new Risk within the specified Project. The Risk will
|
|
135
135
|
inherit Project context such as access permissions and workspace
|
|
@@ -143,7 +143,7 @@ class RiskClient:
|
|
|
143
143
|
body : RiskCreateDto
|
|
144
144
|
The data used to create the Risk
|
|
145
145
|
"""
|
|
146
|
-
path = f"/api/data/risks/{projectId}"
|
|
146
|
+
path = f"/api/data/risks/projects/{projectId}"
|
|
147
147
|
queryParams = {}
|
|
148
148
|
result = self.client.send_request("POST", path, remove_empty_elements(dataclasses.asdict(body)), queryParams, None)
|
|
149
149
|
if result.status_code >= 200 and result.status_code < 300:
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
#
|
|
2
|
+
# ProjectManager API for Python
|
|
3
|
+
#
|
|
4
|
+
# (c) ProjectManager.com, Inc.
|
|
5
|
+
#
|
|
6
|
+
# For the full copyright and license information, please view the LICENSE
|
|
7
|
+
# file that was distributed with this source code.
|
|
8
|
+
#
|
|
9
|
+
# @author ProjectManager.com <support@projectmanager.com>
|
|
10
|
+
# @copyright ProjectManager.com, Inc.
|
|
11
|
+
# @link https://github.com/projectmgr/projectmanager-sdk-python
|
|
12
|
+
#
|
|
13
|
+
|
|
14
|
+
from ProjectManagerSdk.models.astroresult import AstroResult
|
|
15
|
+
from ProjectManagerSdk.models.businessroleslistdto import BusinessRolesListDto
|
|
16
|
+
from ProjectManagerSdk.models.rolecreatedto import RoleCreateDto
|
|
17
|
+
from ProjectManagerSdk.models.roledto import RoleDto
|
|
18
|
+
from ProjectManagerSdk.models.roleupdatechangeitemdto import RoleUpdateChangeItemDto
|
|
19
|
+
from typing import List
|
|
20
|
+
from ProjectManagerSdk.tools import remove_empty_elements
|
|
21
|
+
import dataclasses
|
|
22
|
+
import json
|
|
23
|
+
import dacite
|
|
24
|
+
|
|
25
|
+
class SecurityClient:
|
|
26
|
+
"""
|
|
27
|
+
API methods related to Security
|
|
28
|
+
"""
|
|
29
|
+
from ProjectManagerSdk.projectmanagerclient import ProjectManagerClient
|
|
30
|
+
|
|
31
|
+
def __init__(self, client: ProjectManagerClient):
|
|
32
|
+
self.client = client
|
|
33
|
+
|
|
34
|
+
def list_business_roles(self) -> AstroResult[BusinessRolesListDto]:
|
|
35
|
+
"""
|
|
36
|
+
Returns every business role in the current workspace, including
|
|
37
|
+
built-in and custom roles. Each role includes a permissions
|
|
38
|
+
object with entitlement and grant state for the account security
|
|
39
|
+
matrix.
|
|
40
|
+
|
|
41
|
+
Parameters
|
|
42
|
+
----------
|
|
43
|
+
"""
|
|
44
|
+
path = "/api/data/security/businessroles"
|
|
45
|
+
queryParams = {}
|
|
46
|
+
result = self.client.send_request("GET", path, None, queryParams, None)
|
|
47
|
+
if result.status_code >= 200 and result.status_code < 300:
|
|
48
|
+
data = dacite.from_dict(data_class=BusinessRolesListDto, data=json.loads(result.content)['data'])
|
|
49
|
+
return AstroResult[BusinessRolesListDto](None, True, False, result.status_code, data)
|
|
50
|
+
else:
|
|
51
|
+
response = AstroResult[BusinessRolesListDto](None, False, True, result.status_code, None)
|
|
52
|
+
response.load_error(result)
|
|
53
|
+
return response
|
|
54
|
+
|
|
55
|
+
def create_business_role(self, body: RoleCreateDto) -> AstroResult[RoleDto]:
|
|
56
|
+
"""
|
|
57
|
+
Chargebee entitlements are evaluated read-only when saving
|
|
58
|
+
permission grants; this call does not change subscription state.
|
|
59
|
+
|
|
60
|
+
Parameters
|
|
61
|
+
----------
|
|
62
|
+
body : RoleCreateDto
|
|
63
|
+
Role name, optional description, and permission settings for
|
|
64
|
+
the new role.
|
|
65
|
+
"""
|
|
66
|
+
path = "/api/data/security/businessroles"
|
|
67
|
+
queryParams = {}
|
|
68
|
+
result = self.client.send_request("POST", path, remove_empty_elements(dataclasses.asdict(body)), queryParams, None)
|
|
69
|
+
if result.status_code >= 200 and result.status_code < 300:
|
|
70
|
+
data = dacite.from_dict(data_class=RoleDto, data=json.loads(result.content)['data'])
|
|
71
|
+
return AstroResult[RoleDto](None, True, False, result.status_code, data)
|
|
72
|
+
else:
|
|
73
|
+
response = AstroResult[RoleDto](None, False, True, result.status_code, None)
|
|
74
|
+
response.load_error(result)
|
|
75
|
+
return response
|
|
76
|
+
|
|
77
|
+
def update_business_role(self, roleId: str, body: List[RoleUpdateChangeItemDto]) -> AstroResult[RoleDto]:
|
|
78
|
+
"""
|
|
79
|
+
Send property change sets using the same pattern as other
|
|
80
|
+
workspace batch-update APIs. For permissions, include a
|
|
81
|
+
permissions property with a partial or full permissions object;
|
|
82
|
+
omitted keys are merged with the current role. Keys may use the
|
|
83
|
+
same names as GET `permissions` (e.g. `editUsers`) or RetrieveMe
|
|
84
|
+
/ POST-create style (e.g. `editUser`). The response body matches
|
|
85
|
+
create when successful.
|
|
86
|
+
|
|
87
|
+
Parameters
|
|
88
|
+
----------
|
|
89
|
+
roleId : str
|
|
90
|
+
Business role identifier.
|
|
91
|
+
body : List[RoleUpdateChangeItemDto]
|
|
92
|
+
List of property name and value pairs to apply.
|
|
93
|
+
"""
|
|
94
|
+
path = f"/api/data/security/businessroles/{roleId}"
|
|
95
|
+
queryParams = {}
|
|
96
|
+
bodyArray = []
|
|
97
|
+
for item in body:
|
|
98
|
+
bodyArray.append(remove_empty_elements(dataclasses.asdict(item)))
|
|
99
|
+
result = self.client.send_request("PUT", path, bodyArray, queryParams, None)
|
|
100
|
+
if result.status_code >= 200 and result.status_code < 300:
|
|
101
|
+
data = dacite.from_dict(data_class=RoleDto, data=json.loads(result.content)['data'])
|
|
102
|
+
return AstroResult[RoleDto](None, True, False, result.status_code, data)
|
|
103
|
+
else:
|
|
104
|
+
response = AstroResult[RoleDto](None, False, True, result.status_code, None)
|
|
105
|
+
response.load_error(result)
|
|
106
|
+
return response
|
|
107
|
+
|
|
108
|
+
def delete_business_role(self, roleId: str) -> AstroResult[object]:
|
|
109
|
+
"""
|
|
110
|
+
Built-in roles cannot be deleted. Users assigned to the role may
|
|
111
|
+
need to be reassigned before the role can be removed.
|
|
112
|
+
|
|
113
|
+
Parameters
|
|
114
|
+
----------
|
|
115
|
+
roleId : str
|
|
116
|
+
Identifier of the custom role to remove.
|
|
117
|
+
"""
|
|
118
|
+
path = f"/api/data/security/businessroles/{roleId}"
|
|
119
|
+
queryParams = {}
|
|
120
|
+
result = self.client.send_request("DELETE", path, None, queryParams, None)
|
|
121
|
+
if result.status_code >= 200 and result.status_code < 300:
|
|
122
|
+
data = dacite.from_dict(data_class=object, data=json.loads(result.content)['data'])
|
|
123
|
+
return AstroResult[object](None, True, False, result.status_code, data)
|
|
124
|
+
else:
|
|
125
|
+
response = AstroResult[object](None, False, True, result.status_code, None)
|
|
126
|
+
response.load_error(result)
|
|
127
|
+
return response
|
|
128
|
+
|
|
129
|
+
def resend_email_validation(self) -> AstroResult[object]:
|
|
130
|
+
"""
|
|
131
|
+
Sends another validation email to the authenticated user's
|
|
132
|
+
workspace email address.
|
|
133
|
+
|
|
134
|
+
Parameters
|
|
135
|
+
----------
|
|
136
|
+
"""
|
|
137
|
+
path = "/api/data/security/email/validation/resend"
|
|
138
|
+
queryParams = {}
|
|
139
|
+
result = self.client.send_request("GET", path, None, queryParams, None)
|
|
140
|
+
if result.status_code >= 200 and result.status_code < 300:
|
|
141
|
+
data = dacite.from_dict(data_class=object, data=json.loads(result.content)['data'])
|
|
142
|
+
return AstroResult[object](None, True, False, result.status_code, data)
|
|
143
|
+
else:
|
|
144
|
+
response = AstroResult[object](None, False, True, result.status_code, None)
|
|
145
|
+
response.load_error(result)
|
|
146
|
+
return response
|
|
@@ -121,3 +121,23 @@ class TagClient:
|
|
|
121
121
|
response = AstroResult[TagDto](None, False, True, result.status_code, None)
|
|
122
122
|
response.load_error(result)
|
|
123
123
|
return response
|
|
124
|
+
|
|
125
|
+
def delete_tag(self, tagId: str) -> AstroResult[object]:
|
|
126
|
+
"""
|
|
127
|
+
Permanently removes the specified Tag.
|
|
128
|
+
|
|
129
|
+
Parameters
|
|
130
|
+
----------
|
|
131
|
+
tagId : str
|
|
132
|
+
The id of the tag to delete
|
|
133
|
+
"""
|
|
134
|
+
path = f"/api/data/tags/{tagId}"
|
|
135
|
+
queryParams = {}
|
|
136
|
+
result = self.client.send_request("DELETE", path, None, queryParams, None)
|
|
137
|
+
if result.status_code >= 200 and result.status_code < 300:
|
|
138
|
+
data = dacite.from_dict(data_class=object, data=json.loads(result.content)['data'])
|
|
139
|
+
return AstroResult[object](None, True, False, result.status_code, data)
|
|
140
|
+
else:
|
|
141
|
+
response = AstroResult[object](None, False, True, result.status_code, None)
|
|
142
|
+
response.load_error(result)
|
|
143
|
+
return response
|