PSOHub API - Projects
Learn how to use the API endpoint for projects
In PSOhub, Projects are the core component where it "all" comes together. With this API endpoint, you will be able to create and retrieve projects from PSOhub for the client that is connected.
Get all projects
GET https://www.psohubapp.com/rest/psohubapi/v1/projects
When successful, the response will look like this:
[
{
"Name": "New project for City of Boston",
"StartDate": "2024-08-15T18:16:24.085Z",
"ProjectTypeID": "13229323923272053",
"Stage": "Active",
"ProjectNumber": "PRO-2024-13",
"ProjectManager": "Art Volker",
"TotalProjectValue": 0,
"CurrencyCode": "USD",
"ProjectID": 13229323915872053,
"CompanyID": 14073748835550302,
"ExternalDealID": 0,
"ProjectManagerID": 39406496739494241,
"BusinessUnitID": 1
},
{
"Name": "New project for Louwman Group",
"StartDate": "2024-08-15T18:14:07.153Z",
"ProjectType": "-",
"Stage": "Proposal",
"ProjectManager": "-",
"TotalProjectValue": 0,
"CurrencyCode": "USD",
"ProjectID": 13229323915871939,
"CompanyID": 14073748840512521,
"ExternalDealID": 0,
"BusinessUnitID": 1
}
]
With this request, you will retrieve all projects. By default, the number of returned items is 50. If you want to get more , please use the limit parameter to request more like this:
IMPORTANT: The ProjectID is the unique identifier you will need in the future to update projects so be sure to store this within your system.
GET https://www.psohubapp.com/rest/psohubapi/v1/projects?limit=150
Available fields in Project
The following fields will be returned when you do a GET request for projects
Name |
Type |
Description |
Name |
String |
The name of the project |
StartDate |
DateTime |
The target start date |
Stage |
String (read only) |
The stage of the project (other table) |
ProjectNumber |
String |
Project number in PSOhub |
ProjectTypeID |
Integer/Long |
ID of the Project Type |
ProjectManager |
String (read only) |
The assigned PM (other table) |
TotalProjectValue |
Decimal |
The total value of the project |
CurrencyCode |
String |
The currency used (other table) |
ProjectID (Primary Key) |
Integer/Long |
Unique ID of the Project |
CompanyID |
Integer/Long |
Unique ID of the associated company |
ExternalDealID |
Integer/Long |
The DealID of an external CRM |
BusinessUnitID |
Integer/Long |
The unique ID of the assigned Business Unit |
ProjectManagerID |
Integer/Long |
The unique ID of the assigned PM |
Get all projects search fields
When there are a lot of projects, it's likely you would want to filter the list. The following query parameters are supported for the get all projects endpoint.
Parameter |
Type |
Example |
Name |
String |
Name=TestProject |
Stage |
String |
Stage=Active |
Create a Project
When you want to create a new project, use the following endpoint:
POST https://www.psohubapp.com/rest/psohubapi/v1/project
The mapping below will show you which fields are available and those which are required to successfully create a project
Name |
Required |
Type |
Description |
Name |
Yes |
String |
The name of the project |
StartDate |
No |
DateTime |
The target start date |
Stage
|
Yes |
String |
The stage of the project (other table) |
DealAmount |
No |
Decimal |
Deal amount from the opportunity/deal |
ProjectTypeID |
No |
Integer/LOng |
ID of project type(other table) |
CurrencyCode |
No (see description) |
String |
This is only required if the project is in another currency then the base currency |
CompanyID |
Yes |
Integer/Long |
Unique ID of the associated company |
ContactID |
No |
Integer/Long |
Unique ID of the associated main contact |
BusinessUnitID |
No (see description) |
Integer/Long |
If no ID is provieded, the main business unit will be selected |
ProjectManagerID |
No |
Integer/Long |
The unique ID of the assigned PM |
ContractTemplateID |
No |
Integer/Long |
The unique ID of the contract template |
A typical request would look like this (only send over the required fields and additional fields if needed)
{
"Name": "API Project",
"StartDate": "2024-09-09T18:14:07.153Z",
"ProjectTypeID": "523523502309232",
"Stage": "Active",
"CurrencyCode": "USD",
"CompanyID": 14073748840512521,
"BusinessUnitID": 1
}
If successful, the response will return the ProjectID
{
ProjectID:"13229323916012216",
"ProjectNumber: "PRO-13-2024"
}
Store this ID if you are planning on updating the project data in the future.