ITM Platform API documentation

Introduction

With the extensive library of API methods that we provide, you can quickly and easily integrate your existing company applications with ITM Platform. All of our APIs have been built using the REST architecture, so if you are familiar with REST APIs, you should be up and running quickly. Responses are all returned in JSON and potential errors include the HTTP error codes.

All calls should be made to the https://api.itmplatform.com domain, followed by a forward slash and the name of your company as in the URL of your environment on ITM Platform, for example https://api.itmplatform.com/company1

Scope of the integration

The APIs include the vast majority of the entities that ITM Platform encompasses, including projects, services, tasks, purchases, revenues, activities and clients. In most cases a GET, PUT, POST and DELETE method is provided for retrieving, adding, updating and deleting items. We are continually extending our library of API methods with new features/calls to accommodate our clients’ needs.

Authentication

The authentication method we provide is through API keys. To obtain the token you need to authenticate with a user account of your company installation. Remember that the permissions you are granted on the API depend on the permissions that the user has on ITM Platform.

Limits

The following quotas apply to the number of requests coming from the same IP address:

  • 5 requests per second

  • 100 requests per minute

  • 4,000 requests per hour

  • 10,000 requests per day

Help

If you have further questions, please contact us at support@itmplatform.com

Authentication

Authentication

This method is needed to obtain a token from the API server that consecutively needs to be passed as a parameter in the HTTP request header for any other call to the ITM Platform API server. Use the email and password of a regular user on your company environment of ITM Platform. Remember that the permissions you are granted on the API depend on the permissions that the user has on ITM Platform. Generated token will expire after 30 minutes from the time of token generation. If the session is active, then 30 minutes time will be added to the existing token expiration time on every call.

GET https://api.itmplatform.com/company1/login/foo@example.com/1
Responses200400
Headers
Content-Type: application/json
Body
{
    {
        "Token": "552520150723161530268",
        "UserID": "1686",
        "Result": "1",
        "ResultStatus": "Success"
    }
}
Headers
Content-Type: application/json
Body
{
    "Incorrect company name or email or password."
}

Get Authentication
GET/login/{Email}/{Password}

  • {AccountName}/login/{Email}/{Password}
    • Example:
      • /login/foo@example.com/1
URI Parameters
HideShow
Email
string (required) Example: foo@example.com
Password
string (required) Example: 1

Objectives & Processes

Business Goal Categories

This method serves to retrieve a list of all business goal categories.

GET https://api.itmplatform.com/company1/businessgoalcategories
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "BusinessGoalCategoryId": 3936,
    "BusinessGoalCategoryName": "Cost reduction"
  },
  {
    "BusinessGoalCategoryId": 3935,
    "BusinessGoalCategoryName": "Grow the business"
  },
  {
    "BusinessGoalCategoryId": 3937,
    "BusinessGoalCategoryName": "Run the business "
  },
  {
    "BusinessGoalCategoryId": 6306,
    "BusinessGoalCategoryName": "Test Category"
  },
  {
    "BusinessGoalCategoryId": 6309,
    "BusinessGoalCategoryName": "Test Goal"
  },
  {
    "BusinessGoalCategoryId": 3934,
    "BusinessGoalCategoryName": "Transformation"
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get business goal categories
GET/businessgoalcategories

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/businessgoalcategories
    • Example:
      • /businessgoalcategories

Business Goals

This method serves to retrieve a list of all business goals.

GET https://api.itmplatform.com/company1/businessgoals
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "BusinessGoalId": 140,
    "BusinessGoalName": "New Plan\\Increase Sales",
    "GoalNo": "BG-1142-13110001"
  },
  {
    "BusinessGoalId": 141,
    "BusinessGoalName": "Plan Estratégico\\Increase Profit",
    "GoalNo": "BG-1142-13110002"
  },
  {
    "BusinessGoalId": 142,
    "BusinessGoalName": "Plan Estratégico\\My Goal",
    "GoalNo": "BG-1142-13120001"
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get business goals
GET/businessgoals

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/businessgoals
    • Example:
      • /businessgoals

Business Plans

This method serves to retrieve a list of all business plans.

GET https://api.itmplatform.com/company1/businessplans
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "BusinessPlanId": 115,
    "BusinessPlanName": "Plan Estratégico",
    "StartDate": "2010-01-01T00:00:00",
    "EndDate": "2010-12-31T00:00:00"
  },
  {
    "BusinessPlanId": 116,
    "BusinessPlanName": "New Plan",
    "StartDate": "2016-05-11T00:00:00",
    "EndDate": "2016-05-11T00:00:00"
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get business plans
GET/businessplans

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/businessplans
    • Example:
      • /businessplans

Business Processes

This method serves to retrieve a list of all business processes

GET https://api.itmplatform.com/company1/businessprocesses
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "BusinessProcessName": "New Process 1",
    "BusinessProcessId": 114,
    "ActivityName": "new Activity 1",
    "ValueChainName": "new chain1",
    "ParentProcess": "PRC1"
  },
  {
    "BusinessProcessName": "PRC1",
    "BusinessProcessId": 115,
    "ActivityName": "new Activity 1",
    "ValueChainName": "new chain1",
    "ParentProcess": ""
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get business processes
GET/businessprocesses

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/businessprocesses
    • Example:
      • /businessprocesses

Clients

Clients

This method serves to retrieve a list of all clients.

GET https://api.itmplatform.com/company1/clients
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "ClientId": 77,
    "ClientName": "New Client",
    "StreetAddress": "Address",
    "City": "City",
    "State": "2016/02/02",
    "Zipcode": "380061",
    "EmailAddress": "foo@example1.com",
    "Phone": "7927545454",
    "Fax": "",
    "Website": "www.mywebsite.com",
    "CountryName": "India",
    "FiscalId": "2345",
    "ClientContacts": [
      {
        "ClientId": 77,
        "ClientContactId": 58,
        "ContactEmailAddress": "buyers@central.client",
        "ContactPhone": "7925636362",
        "ContactMobile": "9898562536",
        "ContactFax": "",
        "FirstName": "John",
        "LastName": "Doe",
        "DisplayName": "JD",
        "AlternativeEmailAddress": "",
        "Comments": "",
        "FaceBook": "",
        "Twitter": "",
        "LinkedIn": "",
        "WebSite": "www.mywebsite.com"
      }
    ]
  },
  {
    "ClientId": 78,
    "ClientName": "Client 2",
    "StreetAddress": "",
    "City": "",
    "State": "",
    "Zipcode": "",
    "EmailAddress": "",
    "Phone": "",
    "Fax": "",
    "Website": "",
    "CountryName": "",
    "FiscalId": "",
    "ClientContacts": [
      {
        "ClientId": 78,
        "ClientContactId": 60,
        "ContactEmailAddress": "central@globalcorp360.com",
        "ContactPhone": "",
        "ContactMobile": "",
        "ContactFax": "",
        "FirstName": "New",
        "LastName": "Client",
        "DisplayName": "New Client",
        "AlternativeEmailAddress": "www.mywebsite.com",
        "Comments": ".Net & Windows Phone 1",
        "FaceBook": "",
        "Twitter": "",
        "LinkedIn": "",
        "WebSite": ""
      }
    ]
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get clients
GET/clients

Note :Pass token as parameter in HTTP request header

.

  • {AccountName}/clients
    • Example:
      • /clients

OR

  • {AccountName}/clients/?ClientId=Id
    • Example:
      • /clients/?ClientId=19
      • For fixed urls: {AccountName}/clients
      • For urls with Filters in them:
        • {AccountName}/clients/?ClientId=Id

Filter Operators :

  • gt - “greater than” - returns items with the specified attribute that is greater than the defined value

  • lt - “less than” - returns items with the specified attribute that is less than the defined value

  • eql - “equal to” - returns items with the specified attribute that is equal to the defined value

Conjunction operators :

  • AND - returns items that meet all filter operators

  • OR - returns items that meet at least one filter operator

Example of Filter URL :

URI Parameters
HideShow
ClientId
string (optional) 
City
string (optional) 
ClientName
string (optional) 
CountryName
string (optional) 
EmailAddress
string (optional) 
Fax
string (optional) 
Phone
string (optional) 
State
string (optional) 
Website
string (optional) 
Zipcode
string (optional) 
StreetAddress
string (optional) 

Organization Units

Organization Units

This method serves to retrieve a list of all organization units.

GET https://api.itmplatform.com/company1/organizationunits
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "UnitId": 450,
    "UnitName": "Asp.Net",
    "ParentUnitId": 458,
    "ParentUnitName": "Android",
    "UnitCode": "123",
    "EmailAddress": "test"
  },
  {
    "UnitId": 451,
    "UnitName": "MVC",
    "ParentUnitId": 450,
    "ParentUnitName": "Asp.Net",
    "UnitCode": "",
    "EmailAddress": ""
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get organization units
GET/organizationunits

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/organizationunits
    • Example:
      • /organizationunits

Assets

Assets

This method serves to retrieve a list of all assets.

GET https://api.itmplatform.com/company1/assets
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "AssetId": 133,
    "AssetName": "Asset",
    "ParentAssetId": 0,
    "ParentAssetName": "",
    "AssetType": "Infrastructure"
  },
  {
    "AssetId": 134,
    "AssetName": "Test",
    "ParentAssetId": 0,
    "ParentAssetName": "",
    "AssetType": "Application"
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get assets
GET/assets

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/assets
    • Example:
      • /assets

Parameters

Project Approvals

This method serves to retrieve a list of all project approvals.

GET https://api.itmplatform.com/company1/projectapprovals
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "ProjectApprovalBaseId": 11430,
    "ProjectApprovalName": "Approved",
    "IconPath": "~/UploadData/Iconlibrary/status.png",
    "IsDefault": false
  },
  {
    "ProjectApprovalBaseId": 11431,
    "ProjectApprovalName": "Cancel",
    "IconPath": "~/UploadData/Iconlibrary/status-offline.png",
    "IsDefault": false
  },
  {
    "ProjectApprovalBaseId": 11432,
    "ProjectApprovalName": "Pending",
    "IconPath": "~/UploadData/Iconlibrary/status-away.png",
    "IsDefault": true
  },
  {
    "ProjectApprovalBaseId": 11433,
    "ProjectApprovalName": "Rejected",
    "IconPath": "~/UploadData/Iconlibrary/status-busy.png",
    "IsDefault": false
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get project approvals
GET/projectapprovals

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/projectapprovals
    • Example:
      • /projectapprovals

Project Priorities

This method serves to retrieve a list of all project priorities.

GET https://api.itmplatform.com/company1/projectpriorities
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "ProjectPriorityBaseId": 7890,
    "ProjectPriorityName": "High",
    "IconPath": "~/UploadData/Iconlibrary/flag.png",
    "IsDefault": false
  },
  {
    "ProjectPriorityBaseId": 7892,
    "ProjectPriorityName": "Low",
    "IconPath": "~/UploadData/Iconlibrary/flag-white.png",
    "IsDefault": false
  },
  {
    "ProjectPriorityBaseId": 7891,
    "ProjectPriorityName": "Normal",
    "IconPath": "~/UploadData/Iconlibrary/flag-green.png",
    "IsDefault": true
  },
  {
    "ProjectPriorityBaseId": 7889,
    "ProjectPriorityName": "Urgent",
    "IconPath": "~/UploadData/Iconlibrary/flag--exclamation.png",
    "IsDefault": false
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get project priorities
GET/projectpriorities

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/projectpriorities
    • Example:
      • /projectpriorities

Project Statuses

This method serves to retrieve a list of all project statuses.

GET https://api.itmplatform.com/company1/projectstatuses
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "ProjectStatusBaseId": 12743,
    "ProjectStatusName": "Canceled",
    "IconPath": "~/UploadData/Iconlibrary/minus.png",
    "IsDefault": false
  },
  {
    "ProjectStatusBaseId": 12741,
    "ProjectStatusName": "Closed",
    "IconPath": "~/UploadData/Iconlibrary/lock.png",
    "IsDefault": false
  },
  {
    "ProjectStatusBaseId": 12739,
    "ProjectStatusName": "Draft",
    "IconPath": "~/UploadData/Iconlibrary/pencil-ruler.png",
    "IsDefault": false
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get project statuses
GET/projectstatuses

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/projectstatuses
    • Example:
      • /projectstatuses

Project Types

This method serves to retrieve a list of all project types.

GET https://api.itmplatform.com/company1/projecttypes
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "ProjectTypeBaseId": 8332,
    "ProjectTypeName": "Adaptation of product or process",
    "IconPath": "~/UploadData/Iconlibrary/node-select.png",
    "IsDefault": false
  },
  {
    "ProjectTypeBaseId": 15863,
    "ProjectTypeName": "category3",
    "IconPath": "",
    "IsDefault": false
  },
  {
    "ProjectTypeBaseId": 8331,
    "ProjectTypeName": "Change Management",
    "IconPath": "~/UploadData/Iconlibrary/node-select-all.png",
    "IsDefault": false
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get project types
GET/projecttypes

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/projecttypes
    • Example:
      • /projecttypes

Task Priorities

This method serves to retrieve a list of all task priorities.

GET https://api.itmplatform.com/company1/taskpriorities
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "TaskPriorityBaseId": 7619,
    "TaskPriorityName": "Urgent",
    "IsDefault": false
  },
  {
    "TaskPriorityBaseId": 7620,
    "TaskPriorityName": "High",
    "IsDefault": true
  },
  {
    "TaskPriorityBaseId": 7621,
    "TaskPriorityName": "Normal",
    "IsDefault": false
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get task priorities
GET/taskpriorities

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/taskpriorities
    • Example:
      • /taskpriorities

Task Statuses

This method serves to retrieve a list of all task statuses.

GET https://api.itmplatform.com/company1/taskstatuses
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "TaskStatusBaseId": 8116,
    "TaskStatusName": "To Do",
    "IsDefault": true
  },
  {
    "TaskStatusBaseId": 8117,
    "TaskStatusName": "In Progress",
    "IsDefault": false
  },
  {
    "TaskStatusBaseId": 8118,
    "TaskStatusName": "To Verify",
    "IsDefault": false
  },
  {
    "TaskStatusBaseId": 8119,
    "TaskStatusName": "Completed",
    "IsDefault": false
  },
  {
    "TaskStatusBaseId": 8740,
    "TaskStatusName": "New Default Status",
    "IsDefault": false
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get task statuses
GET/taskstatuses

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/taskstatuses
    • Example:
      • /taskstatuses

Task Types

This method serves to retrieve a list of all task types.

GET https://api.itmplatform.com/company1/tasktypes
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "TaskTypeBaseId": 9841,
    "TaskTypeName": "Management",
    "IsDefault": false
  },
  {
    "TaskTypeBaseId": 9842,
    "TaskTypeName": "Design",
    "IsDefault": false
  },
  {
    "TaskTypeBaseId": 9844,
    "TaskTypeName": "Analysis",
    "IsDefault": false
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get task types
GET/tasktypes

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/tasktypes
    • Example:
      • /tasktypes

Purchase Types

This method serves to retrieve a list of all purchase types.

GET https://api.itmplatform.com/company1/purchasetypes
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "InvoiceTypeBaseId": 3272,
    "InvoiceTypeName": "Non Technical",
    "IsDefault": true,
    "IconPath": "~/UploadData/Iconlibrary/flag-green.png"
  },
  {
    "InvoiceTypeBaseId": 3273,
    "InvoiceTypeName": "Others",
    "IsDefault": false,
    "IconPath": "~/UploadData/Iconlibrary/question.png"
  },
  {
    "InvoiceTypeBaseId": 3271,
    "InvoiceTypeName": "Technical",
    "IsDefault": false,
    "IconPath": "~/UploadData/Iconlibrary/calendar--exclamation.png"
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get purchase types
GET/purchasetypes

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/purchasetypes
    • Example:
      • /purchasetypes

Purchase Statuses

This method serves to retrieve a list of all purchase statuses.

GET https://api.itmplatform.com/company1/purchasestatuses
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "PurchaseStatusBaseId": 7,
    "PurchaseStatusName": "Not Approved",
    "IsDefault": false,
    "IsConsiderAsActualValue": false,
    "IconPath": "~/UploadData/Iconlibrary/flag--exclamation.png"
  },
  {
    "PurchaseStatusBaseId": 1,
    "PurchaseStatusName": "Pending",
    "IsDefault": true,
    "IsConsiderAsActualValue": false,
    "IconPath": "~/UploadData/Iconlibrary/flag-yellow.png"
  },
  {
    "PurchaseStatusBaseId": 4,
    "PurchaseStatusName": "Purchased",
    "IsDefault": false,
    "IsConsiderAsActualValue": true,
    "IconPath": "~/UploadData/Iconlibrary/tick-button.png"
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get purchase statuses
GET/purchasestatuses

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/purchasestatuses
    • Example:
      • /purchasestatuses

Risk Impacts

This method serves to retrieve a list of all risk impacts.

GET https://api.itmplatform.com/company1/riskimpacts
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "RiskImpactBaseId": 3952,
    "RiskImpactName": "High(10)",
    "RiskImpactValue": "3952,10"
  },
  {
    "RiskImpactBaseId": 3953,
    "RiskImpactName": "Medium-High(7)",
    "RiskImpactValue": "3953,7"
  },
  {
    "RiskImpactBaseId": 3954,
    "RiskImpactName": "Medium-Low(5)",
    "RiskImpactValue": "3954,5"
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get risk impacts
GET/riskimpacts

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/riskimpacts
    • Example:
      • /riskimpacts

Risk Types

This method serves to retrieve a list of all risk types.

GET https://api.itmplatform.com/company1/risktypes
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "RiskTypeBaseId": 3975,
    "RiskTypeName": "Technical"
  },
  {
    "RiskTypeBaseId": 3976,
    "RiskTypeName": "Scope"
  },
  {
    "RiskTypeBaseId": 3977,
    "RiskTypeName": "Team"
  },
  {
    "RiskTypeBaseId": 3978,
    "RiskTypeName": "Organizational"
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get risk types
GET/risktypes

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/risktypes
    • Example:
      • /risktypes

Risk Levels

This method serves to retrieve a list of all risk levels.

GET https://api.itmplatform.com/company1/risklevels
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "RiskLevelBaseId": 3009,
    "RiskLevelName": "High",
    "RiskLevelValue": 21
  },
  {
    "RiskLevelBaseId": 3010,
    "RiskLevelName": "Medium",
    "RiskLevelValue": 11
  },
  {
    "RiskLevelBaseId": 3011,
    "RiskLevelName": "Low",
    "RiskLevelValue": 2
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get risk levels
GET/risklevels

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/risklevels
    • Example:
      • /risklevels

Risk Probabilites

This method serves to retrieve a list of all risk probabilites.

GET https://api.itmplatform.com/company1/riskprobabilites
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "RiskProbabilityBaseId": 3927,
    "RiskProbabilityName": "High(4)",
    "RiskProbabilityValue": "3927,4"
  },
  {
    "RiskProbabilityBaseId": 3928,
    "RiskProbabilityName": "Medium-High(3)",
    "RiskProbabilityValue": "3928,3"
  },
  {
    "RiskProbabilityBaseId": 3929,
    "RiskProbabilityName": "Medium-Low(2)",
    "RiskProbabilityValue": "3929,2"
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get risk probabilites
GET/riskprobabilites

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/riskprobabilites
    • Example:
      • /riskprobabilites

Risk statuses

This method serves to retrieve a list of all risk statuses.

GET https://api.itmplatform.com/company1/riskstatuses
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "RiskStatusBaseId": 3003,
    "RiskStatusName": "Resolved"
  },
  {
    "RiskStatusBaseId": 3004,
    "RiskStatusName": "Not Analyzed"
  },
  {
    "RiskStatusBaseId": 3005,
    "RiskStatusName": "Analyzed"
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get risk statuses
GET/riskstatuses

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/riskstatuses
    • Example:
      • /riskstatuses

Get Assesments

This method serves to retrieve a list assesment.

GET https://api.itmplatform.com/company1/assessments
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "AssesmentBaseId": 3009,
    "AssesmentName": "Good",
    "AssessmentPath": "~/App_Themes/Default/Images/Green.png"
  },
  {
    "AssesmentBaseId": 3010,
    "AssesmentName": "No Critical 1 ",
    "AssessmentPath": "~/App_Themes/Default/Images/Yellow.png"
  },
  {
    "AssesmentBaseId": 3011,
    "AssesmentName": "Critical",
    "AssessmentPath": "~/App_Themes/Default/Images/Red.png"
  },
  {
    "AssesmentBaseId": 3288,
    "AssesmentName": "No Critical 2",
    "AssessmentPath": "~/UploadData/Iconlibrary/icon_notepad.png"
  },
  {
    "AssesmentBaseId": 4812,
    "AssesmentName": "Dirty Check",
    "AssessmentPath": "~/UploadData/Iconlibrary/Microsoft-Word-icon.png"
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get assesments
GET/assessments

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/assessments
    • Example:
      • /assessments

Get countries

This method serves to retrieve list of countries.

GET https://api.itmplatform.com/company1/countries
Responses200400401
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "CountryId": 289,
    "CountryCode": "AF",
    "CountryName": "Afghanistan"
  },
  {
    "CountryId": 292,
    "CountryCode": "AL",
    "CountryName": "Albania"
  },
  {
    "CountryId": 334,
    "CountryCode": "DZ",
    "CountryName": "Algeria"
  },
  {
    "CountryId": 278,
    "CountryCode": "VI",
    "CountryName": "American Virgin Islands"
  },
  {
    "CountryId": 2,
    "CountryCode": "AD",
    "CountryName": "Andorra"
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}

Get countries
GET/countries

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/countries
    • Example:
      • /countries

Get Service Types

This method serves to retrieve a list all service types.

GET https://api.itmplatform.com/company1/servicetypes
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "ServiceTypeBaseId": 8337,
    "ServiceTypeName": "Infrastructure Management update",
    "IconPath": "~/UploadData/Iconlibrary/folder-network.png",
    "IsDefault": false
  },
  {
    "ServiceTypeBaseId": 8335,
    "ServiceTypeName": "Manteinance",
    "IconPath": "~/UploadData/Iconlibrary/folder--pencil.png",
    "IsDefault": false
  },
  {
    "ServiceTypeBaseId": 8336,
    "ServiceTypeName": "Others",
    "IconPath": "~/UploadData/Iconlibrary/folder--plus.png",
    "IsDefault": false
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get service types
GET/servicetypes

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/servicetypes
    • Example:
      • /servicetypes

Get Service Statuses

This method serves to retrieve a list all service statuses.

GET https://api.itmplatform.com/company1/servicestatuses
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "ServiceStatusBaseId": 12746,
    "ServiceStatusName": "Approved",
    "IconPath": "~/UploadData/Iconlibrary/tick.png",
    "IsDefault": false
  },
  {
    "ServiceStatusBaseId": 12750,
    "ServiceStatusName": "Canceled",
    "IconPath": "~/UploadData/Iconlibrary/minus.png",
    "IsDefault": false
  },
  {
    "ServiceStatusBaseId": 12748,
    "ServiceStatusName": "Closed",
    "IconPath": "~/UploadData/Iconlibrary/lock.png",
    "IsDefault": false
  },
  {
    "ServiceStatusBaseId": 12745,
    "ServiceStatusName": "Draft",
    "IconPath": "~/UploadData/Iconlibrary/pencil-ruler.png",
    "IsDefault": true
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get service statuses
GET/servicestatuses

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/servicestatuses
    • Example:
      • /servicestatuses

Get Service Priorities

This method serves to retrieve a list all service priorities.

GET https://api.itmplatform.com/company1/servicepriorities
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "ServicePriorityBaseId": 7894,
    "ServicePriorityName": "High",
    "IconPath": "~/UploadData/Iconlibrary/flag.png",
    "IsDefault": false
  },
  {
    "ServicePriorityBaseId": 7896,
    "ServicePriorityName": "Low",
    "IconPath": "~/UploadData/Iconlibrary/flag-white.png",
    "IsDefault": false
  },
  {
    "ServicePriorityBaseId": 7895,
    "ServicePriorityName": "Normal",
    "IconPath": "~/UploadData/Iconlibrary/flag-green.png",
    "IsDefault": true
  },
  {
    "ServicePriorityBaseId": 7893,
    "ServicePriorityName": "Urgent",
    "IconPath": "~/UploadData/Iconlibrary/flag--exclamation.png",
    "IsDefault": false
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get service priorities
GET/servicepriorities

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/servicepriorities
    • Example:
      • /servicepriorities

Get Service Approvals

This method serves to retrieve a list all service approvals.

GET https://api.itmplatform.com/company1/serviceapprovals
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "ServiceApprovalBaseId": 11434,
    "ServiceApprovalName": "Approve",
    "IconPath": "~/UploadData/Iconlibrary/status.png",
    "IsDefault": false
  },
  {
    "ServiceApprovalBaseId": 11435,
    "ServiceApprovalName": "Cancel",
    "IconPath": "~/UploadData/Iconlibrary/status-offline.png",
    "IsDefault": false
  },
  {
    "ServiceApprovalBaseId": 11436,
    "ServiceApprovalName": "Pending",
    "IconPath": "~/UploadData/Iconlibrary/status-away.png",
    "IsDefault": true
  },
  {
    "ServiceApprovalBaseId": 11437,
    "ServiceApprovalName": "Rejected",
    "IconPath": "~/UploadData/Iconlibrary/status-busy.png",
    "IsDefault": false
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get service approvals
GET/serviceapprovals

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/serviceapprovals
    • Example:
      • /serviceapprovals

Activity Priorities

This method serves to retrieve a list of all activity priorities.

GET https://api.itmplatform.com/company1/activitypriorities
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "ActivityPriorityBaseId": 7624,
    "ActivityPriorityName": "High123",
    "IsDefault": true
  },
  {
    "ActivityPriorityBaseId": 7625,
    "ActivityPriorityName": "Normal",
    "IsDefault": false
  },
  {
    "ActivityPriorityBaseId": 7626,
    "ActivityPriorityName": "Low",
    "IsDefault": false
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get activity priorities
GET/activitypriorities

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/activitypriorities
    • Example:
      • /activitypriorities

Activity Statuses

This method serves to retrieve a list of all activity statuses.

GET https://api.itmplatform.com/company1/activitystatuses
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "ActivityStatusBaseId": 8120,
    "ActivityStatusName": "Scheduled",
    "IsDefault": true
  },
  {
    "ActivityStatusBaseId": 8121,
    "ActivityStatusName": "In Progress",
    "IsDefault": false
  },
  {
    "ActivityStatusBaseId": 8122,
    "ActivityStatusName": "StandBy",
    "IsDefault": false
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get activity statuses
GET/activitystatuses

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/activitystatuses
    • Example:
      • /activitystatuses

Activity Types

This method serves to retrieve a list of all activity types.

GET https://api.itmplatform.com/company1/activitytypes
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "ActivityTypeBaseId": 9848,
    "ActivityTypeName": "Management123",
    "IsDefault": false
  },
  {
    "ActivityTypeBaseId": 9849,
    "ActivityTypeName": "Analysis",
    "IsDefault": false
  },
  {
    "ActivityTypeBaseId": 9850,
    "ActivityTypeName": "Technical Issue",
    "IsDefault": false
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get activity types
GET/activitytypes

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/activitytypes
    • Example:
      • /activitytypes

Projects

Get Projects

This method serves to retrieve a list of all projects including their details. You can apply filters to limit the results

GET https://api.itmplatform.com/company1/projects
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "ProjectId": 331,
    "AccountId": 1142,
    "ProjectName": "iPhone Mobile Application - 1",
    "ProjectNo": "PR-1142-13100001",
    "ProjectType": {
      "ProjectTypeName": "category 3",
      "ProjectTypeId": 15866,
      "ProjectTypeIcon": null
    },
    "ProjectStatus": {
      "ProjectStatusName": "Closed",
      "ProjectStatusId": 12741,
      "ProjectStatusIcon": "https://app.itmplatform.com/UploadData/Iconlibrary/lock.png"
    },
    "ProjectApproval": {
      "ProjectApprovalName": "Rejected",
      "ProjectApprovalId": 11433,
      "ProjectApprovalIcon": "https://app.itmplatform.com/UploadData/Iconlibrary/status-busy.png"
    },
    "ProjectPriority": {
      "ProjectPriorityName": "High",
      "ProjectPriorityId": 7890,
      "ProjectPriorityIcon": "https://app.itmplatform.com/UploadData/Iconlibrary/flag.png"
    },
    "Duration": 5239,
    "ProjectStartDate": "2009-10-01T00:00:00Z",
    "ProjectEndDate": "2029-10-30T00:00:00Z",
    "Assessment": {
      "AssessmentName": "test1",
      "AssessmentId": 5314,
      "AssessmentIcon": "https://app.itmplatform.com/UploadData/Iconlibrary/icon_notepad.png"
    },
    "ProjectProgressComplete": 12,
    "ProjectProgressDate": "2017-09-04T20:09:23Z",
    "CompanyProjectCode": "IAPP1",
    "ProjectTeam": {
      "ProjectManagers": [
        {
          "UserId": 1689,
          "EmailAddress": "torel@globalcorp360.com",
          "DisplayName": "Travis Orellana"
        },
        {
          "UserId": 179,
          "EmailAddress": "major.wyman@globalcorp360.com",
          "DisplayName": "Major Wyman"
        }
      ],
      "ProjectTeamMembers": [
        {
          "UserId": 1688,
          "EmailAddress": "JohnDoe@globalcorp360.com1",
          "DisplayName": "John Doe"
        }
      ],
      "ProjectGuests": []
    },
    "BusinessGoal": {
      "BusinessGoalName": "My Goal",
      "BusinessGoalId": 142
    },
    "BusinessGoalCategory": {
      "BusinessGoalCategoryName": "1234",
      "BusinessGoalCategoryId": 6922
    },
    "Sponsor": {
      "SponsorName": "Android",
      "SponsorId": 458
    },
    "InternalClient": {
      "InternalClientName": "PHP",
      "InternalClientId": 456
    },
    "ExternalClient": {
      "ExternalClientName": "New Again Client",
      "ExternalClientId": 95
    },
    "MainProcessAffected": {
      "MainProcessAffectedName": "new Activity\\PRC1",
      "MainProcessAffectedId": 115
    },
    "DestinationResource": {
      "DestinationResourceName": "Asset1\\Test",
      "DestinationResourcesId": 134
    },
    "PerformingUnit": {
      "PerformingUnitName": "Android",
      "PerformingUnitId": 458
    },
    "Active": true,
    "ProjectMethodTypeId": 1,
    "IsProjectManager": true,
    "Program": null,
    "AllCustomFields": {
      "Test Text Field": "2017-10-04T00:00:00",
      "Test New Field": "123"
    }
  },
  {
    "ProjectId": 338,
    "AccountId": 1142,
    "ProjectName": "Android Mobile Application test ",
    "ProjectNo": "AAP",
    "ProjectType": {
      "ProjectTypeName": "Consulting",
      "ProjectTypeId": 8329,
      "ProjectTypeIcon": "https://app.itmplatform.com/UploadData/Iconlibrary/property.png"
    },
    "ProjectStatus": {
      "ProjectStatusName": "Initial",
      "ProjectStatusId": 12738,
      "ProjectStatusIcon": "https://app.itmplatform.com/UploadData/Iconlibrary/balloons-white.png"
    },
    "ProjectApproval": {
      "ProjectApprovalName": "Rejected",
      "ProjectApprovalId": 11433,
      "ProjectApprovalIcon": "https://app.itmplatform.com/UploadData/Iconlibrary/status-busy.png"
    },
    "ProjectPriority": {
      "ProjectPriorityName": "High",
      "ProjectPriorityId": 7890,
      "ProjectPriorityIcon": "https://app.itmplatform.com/UploadData/Iconlibrary/flag.png"
    },
    "Duration": 4626,
    "ProjectStartDate": "2000-02-09T00:00:00Z",
    "ProjectEndDate": "2017-11-01T00:00:00Z",
    "Assessment": {
      "AssessmentName": "Check",
      "AssessmentId": 4812,
      "AssessmentIcon": "https://app.itmplatform.com/UploadData/Iconlibrary/Microsoft-Word-icon.png"
    },
    "ProjectProgressComplete": 1,
    "ProjectProgressDate": "2017-09-30T12:05:55Z",
    "CompanyProjectCode": "AAP",
    "ProjectTeam": {
      "ProjectManagers": [
        {
          "UserId": 1686,
          "EmailAddress": "major.wyman@globalcorp360.com",
          "DisplayName": "Major Wyman"
        }
      ],
      "ProjectTeamMembers": [
        {
          "UserId": 1688,
          "EmailAddress": "torel@globalcorp360.com",
          "DisplayName": "Travis Orellana"
        }
      ],
      "ProjectGuests": [
        {
          "UserId": 458,
          "EmailAddress": "damar@globalcorp360.com",
          "DisplayName": "David Martin"
        }
      ]
    },
    "BusinessGoal": {
      "BusinessGoalName": "My Goal",
      "BusinessGoalId": 142
    },
    "BusinessGoalCategory": {
      "BusinessGoalCategoryName": "Test Category",
      "BusinessGoalCategoryId": 6306
    },
    "Sponsor": {
      "SponsorName": "PHP",
      "SponsorId": 456
    },
    "InternalClient": {
      "InternalClientName": "PHP",
      "InternalClientId": 456
    },
    "ExternalClient": {
      "ExternalClientName": "New Client",
      "ExternalClientId": 99
    },
    "MainProcessAffected": {
      "MainProcessAffectedName": "new Activity\\PRC1\\New Process",
      "MainProcessAffectedId": 114
    },
    "DestinationResource": {
      "DestinationResourceName": "Asset1",
      "DestinationResourcesId": 133
    },
    "PerformingUnit": {
      "PerformingUnitName": "PHP",
      "PerformingUnitId": 456
    },
    "Active": true,
    "ProjectMethodTypeId": 1,
    "IsProjectManager": true,
    "Program": null,
    "AllCustomFields": {}
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "StatusMessage": "Please enter valid field name",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get projects
GET/projects

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/projects
    • Example:
      • /projects

OR

  • {AccountName}/projects/?ProjectId=Id
    • Example:
      • /projects/?ProjectId=331
      • For fixed urls: {AccountName}/projects
      • For urls with Filters in them:
        • {AccountName}/projects/?ProjectId=Id
        • {AccountName}/projects/?ProjectId=Id&ProjectName=Name
        • {AccountName}/projects/?MemberName=test@mail.com

Filter Operators :

  • gt - “greater than” - returns items with the specified attribute that is greater than the defined value

  • lt - “less than” - returns items with the specified attribute that is less than the defined value

  • eql - “equal to” - returns items with the specified attribute that is equal to the defined value

Conjunction operators :

  • AND - returns items that meet all filter operators

  • OR - returns items that meet at least one filter operator

Examples of Filter URL :

URI Parameters
HideShow
ProjectId
string (optional) Example: 331
ProjectName
string (optional) Example: Revenue Phase 1
ProjectNo
string (optional) 
ProjectType.ProjectTypeName
string (optional) Example: Change Management
ProjectType.ProjectTypeId
string (optional) 
ProjectStatus.ProjectStatusName
string (optional) 
ProjectStatus.ProjectStatusId
string (optional) 
ProjectApproval.ProjectApprovalName
string (optional) 
ProjectApproval.ProjectApprovalId
string (optional) 
ProjectPriority.ProjectPriorityName
string (optional) 
ProjectPriority.ProjectPriorityId
string (optional) 
Duration
string (optional) 
ProjectStartDate
string (optional) 
ProjectEndDate
string (optional) 
Assessment.AssessmentName
string (optional) 
Assessment.AssessmentId
string (optional) 
ProjectProgressComplete
string (optional) 
ProjectProgressDate
string (optional) 
CompanyProjectCode
string (optional) 
ProjectTeam.ProjectManagers.UserId
string (optional) 
ProjectTeam.ProjectTeamMembers.UserId
string (optional) 
BusinessGoal.BusinessGoalName
string (optional) 
BusinessGoal.BusinessGoalId
string (optional) 
BusinessGoalCategory.BusinessGoalCategoryName
string (optional) 
BusinessGoalCategory.BusinessGoalCategoryId
string (optional) 
Sponsor.SponsorName
string (optional) 
Sponsor.SponsorId
string (optional) 
InternalClient.InternalClientName
string (optional) 
InternalClient.InternalClientId
string (optional) 
ExternalClient.ExternalClientName
string (optional) 
ExternalClient.ExternalClientId
string (optional) 
MainProcessAffected.MainProcessAffectedName
string (optional) 
MainProcessAffected.MainProcessAffectedId
string (optional) 
DestinationResource.DestinationResourceName
string (optional) 
DestinationResource.DestinationResourcesId
string (optional) 
PerformingUnit.PerformingUnitName
string (optional) 
PerformingUnit.PerformingUnitId
string (optional) 
ProjectMethodTypeId
string (optional) 
IsProjectManager
string (optional) 
Program.ProgramName
string (optional) 
Program.ProgramId
string (optional) 
MemberName
string (optional) Example: test@mail.com

Add a project

This method serves to add a project.Pass IsKanbanProject property true for kanban project and false for classical project.

POST https://api.itmplatform.com/company1/project
Requestswith body
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "ProjectName" : "Test Project from API INSERT ",
        "Description" : "Project description",
        "ProjectTypeId": 8331,
        "ExternalClientId" : 0,
        "PerformingUnitId" : 0,
        "ProjectPriorityId" : 7891,
        "ProjectStatuesId" : 12740,
        "ProjectApprovalId" :11430,
        "ProjectStartDate" : "2016-06-16T00:00:00Z",
        "ProjectEndDate" : "2016-06-16T00:00:00Z",
        "BusinessGoalId" :0,
        "CategoryId" :0,
        "DestinationAssetId" : 0,
        "MainProcessAffectedId" : 0,
        "InternalClientId" : 0,
        "SponsorId" : 0,
        "CompanyProjectCode" : "",
        "InternalCostCenter:" : "",
        "DescriptionOfBenefit" : "",
        "ExpectedROI" : 15.25,
        "ExpectedROICurrencyId" : 1113,
        "IsKanbanProject" : false
    }
}
Responses201400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "ProjectId":1234,
        "StatusMessage": "Project inserted successfully",
        "StatusCode": 201
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "ProjectId":0,
        "StatusMessage": "Please enter project name",
        "StatusCode": 400
}
{
        "ProjectId":0,
        "StatusMessage": "Please enter project status id",
        "StatusCode": 400
}
{
        "ProjectId":0,
        "StatusMessage": "Please enter valid project status id",
        "StatusCode": 400
}
{
        "ProjectId":0,
        "StatusMessage": "Please enter project type id",
        "StatusCode": 400
}
{
        "ProjectId":0,
        "StatusMessage": "Please enter valid project type id",
        "StatusCode": 400
}  
{
        "ProjectId":0,
        "StatusMessage": "Please enter project approval id",
        "StatusCode": 400
} 
{
        "ProjectId":0,
        "StatusMessage": "Please enter valid project approval id",
        "StatusCode": 400
} 
{
        "ProjectId":0,
        "StatusMessage": "Please enter project priority id",
        "StatusCode": 400
} 
{
        "ProjectId":0,
        "StatusMessage": "Please enter valid project priority id",
        "StatusCode": 400
} 
{
        "ProjectId":0,
        "StatusMessage": "Please enter valid project start date",
        "StatusCode": 400
} 
{
        "ProjectId":0,
        "StatusMessage": "Please enter valid project end date",
        "StatusCode": 400
} 
{
        "ProjectId":0,
        "StatusMessage": "Project end date must be greater than or equal to project start date",
        "StatusCode": 400
} 
{
        "ProjectId":0,
        "StatusMessage": "Please enter valid assest destination id",
        "StatusCode": 400
} 
{
        "ProjectId":0,
        "StatusMessage": "Please enter valid main process affected id",
        "StatusCode": 400
} 
{
        "ProjectId":0,
        "StatusMessage": "Please enter valid internal client id",
        "StatusCode": 400
}
{
        "ProjectId":0,
        "StatusMessage": "Please enter valid sponsor id",
        "StatusCode": 400
}
{
        "ProjectId":0,
        "StatusMessage": "Please enter valid external client id",
        "StatusCode": 400
}
{
        "ProjectId":0,
        "StatusMessage": "Please enter valid performing unit id",
        "StatusCode": 400
}
{
        "ProjectId":0,
        "StatusMessage": "Please enter valid category id",
        "StatusCode": 400
}
{
        "ProjectId":0,
        "StatusMessage": "Please enter valid business goal id",
        "StatusCode": 400
}
{
        "ProjectId":0,
        "StatusMessage": "Please enter valid Expected ROI currency id",
        "StatusCode": 400

Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
        "StatusCode": 403
}
{
        "ProjectId":0,
        "StatusMessage": "Due to license policy, you cannot create more projects",
        "StatusCode": 403
}
{
        "ProjectId":0,
        "StatusMessage": "Project name already exists.",
        "StatusCode": 403
}

Add a project
POST/project

Note :Pass token as parameter in HTTP request header.

  • {AccountName}/project
    • Example:
      • /project

Update a project

This method serves to update a project

PUT https://api.itmplatform.com/company1/project/12262
Requestswith body
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "ProjectName" : "Test Project from API update",
        "Description" : "Project description",
        "ProjectTypeId": 8331,
        "ExternalClientId" : 0,
        "PerformingUnitId" : 0,
        "ProjectPriorityId" : 7891,
        "ProjectStatuesId" : 12740,
        "ProjectApprovalId" :11430,
        "ProjectStartDate" : "2016-06-16T00:00:00Z",
        "ProjectEndDate" : "2016-06-16T00:00:00Z",
        "BusinessGoalId" :0,
        "CategoryId" :0,
        "DestinationAssetId" : 0,
        "MainProcessAffectedId" : 0,
        "InternalClientId" : 0,
        "SponsorId" : 0,
        "CompanyProjectCode" : "",
        "InternalCostCenter:" : "",
        "DescriptionOfBenefit" : "",
        "ExpectedROI" : 15.25,
        "ExpectedROICurrencyId" : 1113
}
Responses201400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "ProjectId":12262,
        "StatusMessage": "Project updated successfully",
        "StatusCode": "201"
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "ProjectId":0,
        "StatusMessage": "Please enter project name",
        "StatusCode": 400
}
{
        "ProjectId":0,
        "StatusMessage": "Please enter project status id",
        "StatusCode": 400
}
{
        "ProjectId":0,
        "StatusMessage": "Please enter valid project status id",
        "StatusCode": 400
}
{
        "ProjectId":0,
        "StatusMessage": "Please enter project type id",
        "StatusCode": 400
}
{
        "ProjectId":0,
        "StatusMessage": "Please enter valid project type id",
        "StatusCode": 400
}  
{
        "ProjectId":0,
        "StatusMessage": "Please enter project approval id",
        "StatusCode": 400
} 
{
        "ProjectId":0,
        "StatusMessage": "Please enter valid project approval id",
        "StatusCode": 400
} 
{
        "ProjectId":0,
        "StatusMessage": "Please enter project priority id",
        "StatusCode": 400
} 
{
        "ProjectId":0,
        "StatusMessage": "Please enter valid project priority id",
        "StatusCode": 400
} 
{
        "ProjectId":0,
        "StatusMessage": "Please enter valid project start date",
        "StatusCode": 400
} 
{
        "ProjectId":0,
        "StatusMessage": "Please enter valid project end date",
        "StatusCode": 400
} 
{
        "ProjectId":0,
        "StatusMessage": "Project end date must be greater than or equal to project start date",
        "StatusCode": 400
} 
{
        "ProjectId":0,
        "StatusMessage": "Please enter valid assest destination id",
        "StatusCode": 400
} 
{
        "ProjectId":0,
        "StatusMessage": "Please enter valid main process affected id",
        "StatusCode": 400
} 
{
        "ProjectId":0,
        "StatusMessage": "Please enter valid internal client id",
        "StatusCode": 400
}
{
        "ProjectId":0,
        "StatusMessage": "Please enter valid sponsor id",
        "StatusCode": 400
}
{
        "ProjectId":0,
        "StatusMessage": "Please enter valid external client id",
        "StatusCode": 400
}
{
        "ProjectId":0,
        "StatusMessage": "Please enter valid performing unit id",
        "StatusCode": 400
}
{
        "ProjectId":0,
        "StatusMessage": "Please enter valid category id",
        "StatusCode": 400
}
{
        "ProjectId":0,
        "StatusMessage": "Please enter valid business goal id",
        "StatusCode": 400
}
{
        "ProjectId":0,
        "StatusMessage": "Please enter valid Expected ROI currency id",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
        "StatusCode": 403
}
{
        "ProjectId":0,
        "StatusMessage": "Please enter valid date range. Date range of projects must be the same as or later than date range of existing tasks.",
        "StatusCode": 403
}
{
        "ProjectId":0,
        "StatusMessage": "Please enter valid date range. Time entry is outside date range.",
        "StatusCode": 403
}
{
        "ProjectId":0,
        "StatusMessage": "Project name already exists.",
        "StatusCode": "403"
}

Update a project
PUT/project/{ProjectId}

Note :Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}
    • Example:
      • /project/1226
URI Parameters
HideShow
ProjectId
int (required) Example: 12262

Get a project

This method serves to retrieve a project detail.

GET https://api.itmplatform.com/company1/project/331
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
         "ProjectId": 331,
         "ProjectNo": "PR-1142-13100001",
         "ProjectName": "iPhone Mobile Application - 1",
         "Description": "",
         "ProjectTypeId": 15866,
         "ProjectTypeName": "Jira  category 3",
         "ProjectPriorityId": 7890,
         "ProjectPriorityName": "High",
         "ProjectStatuesId": 12741,
         "ProjectStatusName": "Closed",
         "ProjectApprovalId": 11433,
         "ProjectApprovalName": "Rejected",
         "PerformingUnitId": 458,
         "PerformingUnitName": "Android",
         "ExternalClientId": 95,
         "ExternalClientName": "New Again Client",
         "IsActive": true,
         "CompanyProjectCode": "IAPP1",
         "InternalCostCenter": "",
         "IsServices": false,
         "CategoryId": 6922,
         "CategoryName": "1234",
         "BusinessGoalId": 142,
         "BusinessGoalName": "My Goal",
         "DescriptionOfBenefit": "test",
         "ExpectedROI": 25,
         "DestinationAssetId": 134,
         "DestinationAssetName": "Test",
         "MainProcessAffectedId": 115,
         "MainProcessAffectedName": "PRC1",
         "InternalClientId": 456,
         "InternalClientName": "PHP",
         "SponsorId": 458,
         "SponsorName": "Android",
         "ExpectedROICurrencyId": 1113,
         "ExpectedROIExcahngeRate": 1,
         "ExpectedROIChangeApplied": "2017-10-04T17:21:06Z",
         "Duration": 5234,
         "ProjectMethodTypeId": 1,
         "ProjectStartDate": "2009-10-01T00:00:00Z",
         "ProjectEndDate": "2029-10-30T00:00:00Z",
         "IsKanbanProject": false,
         "TopDownInternalTeamHours": "12:00",
         "TopDownInternalTeamCost": 0,
         "TopDownExternalTeamHours": "30:00",
         "TopDownExternalTeamCost": 0,
         "TopDownUndefinedTeamHours": "50:00",
         "TopDownUndefinedTeamCost": 0,
         "TopDownTotalWorkforceHours": "92:00",
         "TopDownTotalWorkforceCost": 0,
         "TopDownPurchases": 0,
         "TopDownMargin": 0,
         "TopDownRevenue": 0,
         "TopDownTotalBudget": 0,
         "BottomUpInternalTeamHours": "816:21",
         "BottomUpInternalTeamCost": 40817.5,
         "BottomUpExternalTeamHours": "189:09",
         "BottomUpExternalTeamCost": 9457.5,
         "BottomUpUndefinedTeamHours": "70:00",
         "BottomUpUndefinedTeamCost": 606.5,
         "BottomUpTotalWorkforceHours": "1085:21",
         "BottomUpTotalWorkforceCost": 50888,
         "BottomUpPurchases": -119311.12,
         "BottomUpTotalBudget": -66054.62,
         "BottomUpMargin": 67308.62,
         "BottomUpRevenue": 1254,
         "PECTotalConsumption": 142635,
         "PECInternalTeamHours": "00:00",
         "PECInternalTeamCost": 0,
         "PECExternalTeamHours": "00:00",
         "PECExternalTeamCost": 0,
         "PECTotalWorkforceHours": "00:00",
         "PECTotalWorkforceCost": 0,
         "PECPurchases": 142635,
         "ActualInternalTeamHours": "993:00",
         "ActualInternalTeamCost": 37080,
         "ActualExternalTeamHours": "803:00",
         "ActualExternalTeamCost": 40150,
         "ActualTotalWorkforceHours": "1796:00",
         "ActualTotalWorkforceCost": 77230,
         "ActualPurchases": 142635,
         "ActualMargin": -219865,
         "ActualTotalConsumption": 142635,
         "ActualRevenue": 0
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get a project
GET/project/{ProjectId}

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}
    • Example:
      • /project/331
URI Parameters
HideShow
ProjectId
int (required) Example: 331

Get a project budget

This method serves to retrieve project budget.

GET https://api.itmplatform.com/company1/project/331/budget
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
     "TopDownBudget": {
        "TopDownInternalTeamCost": 96,
        "TopDownInternalTeamHours": "00:00",
        "TopDownExternalTeamCost": 1000,
        "TopDownExternalTeamHours": "00:00",
        "TopDownUndefinedTeamCost": 0,
        "TopDownUndefinedTeamHours": "00:00",
        "TopDownPurchases": 0,
        "TopDownRevenue": 2000,
        "TopDownInternalTeamCostCurrencyId": 1113,
        "TopDownInternalTeamCostExchangeRate": 1,
        "TopDownInternalTeamCostChangeApplied": "2017-06-13T02:16:26Z",
        "TopDownExternalTeamCostCurrencyId": 1113,
        "TopDownExternalTeamCostExchangeRate": 1,
        "TopDownExternalTeamCostChangeApplied": "2017-06-12T21:00:14Z",
        "TopDownPurchasesCurrencyId": 1113,
        "TopDownPurchasesBudgetExchangeRate": 1,
        "TopDownPurchasesChangeApplied": "2017-06-13T02:16:26Z",
        "TopDownUndefinedTeamCostCurrencyId": 1113,
        "TopDownUndefinedTeamCostExchangeRate": 1,
        "TopDownUndefinedTeamCostChangeApplied": "2017-06-13T02:16:26Z",
        "TopDownRevenueCurrencyId": 1113,
        "TopDownRevenueChangeApplied": "2017-06-12T15:31:16Z",
        "TopDownRevenueExchangeRate": 1
    },
    "BottomUpBudget": {
        "BottomUpInternalTeamCost": 40817.499951,
        "BottomUpInternalTeamHours": "816:00",
        "BottomUpExternalTeamCost": 9457.499957,
        "BottomUpExternalTeamHours": "189:00",
        "BottomUpUndefinedTeamCost": 500,
        "BottomUpUndefinedTeamHours": "50:00",
        "BottomUpPurchases": -119880,
        "BottomUpRevenue": 500
    },
    "ActualValues": {
        "ActualInternalTeamCost": 16870,
        "ActualInternalTeamHours": "587:00",
        "ActualExternalTeamCost": 30850,
        "ActualExternalTeamHours": "617:00",
        "ActualPurchases": 400,
        "ActualRevenue": 100
    },
    "LastPECValues": {
        "PECInternalTeamCost": 0,
        "PECInternalTeamHours": "00:00",
        "PECExternalTeamCost": 0,
        "PECExternalTeamHours": "00:00",
        "PECPurchases": 400,
        "PECRevenue": 0
    },
    "GlobalStandardCost": {
        "GlobalStandardGeneralCost": 10,
        "GlobalStandardInternalCost": 8,
        "GlobalStandardExternalCost": 1
    }
}
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get a project budget
GET/project/{ProjectId}/budget

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/budget
    • Example:
      • /project/331/budget
URI Parameters
HideShow
ProjectId
int (required) Example: 331

Update a project budget

This method serves to update a project budget.

PUT https://api.itmplatform.com/company1/project/12262/budget
Requestswith body
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "TopDownInternalTeamCost": 0,
        "TopDownInternalTeamHours": "1",
        "TopDownExternalTeamCost": 0,
        "TopDownExternalTeamHours": "2",
        "TopDownUndefinedTeamCost": 0,
        "TopDownUndefinedTeamHours": "3",
        "TopDownPurchases": 0,
        "TopDownRevenue": 2000,
        "TopDownInternalTeamCostCurrencyId": 1113,
        "TopDownInternalTeamCostExchangeRate": 1,
        "TopDownInternalTeamCostChangeApplied": "2017-06-13T02:16:26Z",
        "TopDownExternalTeamCostCurrencyId": 1113,
        "TopDownExternalTeamCostExchangeRate": 1,
        "TopDownExternalTeamCostChangeApplied": "2017-06-12T21:00:14Z",
        "TopDownPurchasesCurrencyId": 1113,
        "TopDownPurchasesBudgetExchangeRate": 1,
        "TopDownPurchasesChangeApplied": "2017-06-13T02:16:26Z",
        "TopDownUndefinedTeamCostCurrencyId": 1113,
        "TopDownUndefinedTeamCostExchangeRate": 1,
        "TopDownUndefinedTeamCostChangeApplied": "2017-06-13T02:16:26Z",
        "TopDownRevenueCurrencyId": 1113,
        "TopDownRevenueChangeApplied": "2017-06-12T15:31:16Z",
        "TopDownRevenueExchangeRate": 1
    }
}
Responses201400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "StatusMessage": "Budget updated successfully.",
        "StatusCode": "201"
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Update a project budget
PUT/project/{ProjectId}/budget

Note :Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/budget
    • Example:
      • /project/12262/budget
URI Parameters
HideShow
ProjectId
int (required) Example: 12262

Get a project team

This method serves to retrieve a project team detail

GET https://api.itmplatform.com/company1/project/331/team
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "type":"team",
        "version":"1.1",
        "ProjectMethodTypeId":"1",
        "MySelfAsPM":"New.User@globalcorp360.com",
        "members":{
            "2191":{
                "intUserId":"2191",
                "name":"Adolfo Gonzalez",
                "category":"Default One",
                "firstName":"Adolfo",
                "lastName":"Gonzalez",
                "holidays":"2014/01/02,2015/04/07,2015/04/08,2015/04/09,2015/12/25,2015/12/25,",
                "position":"",
                "haspmlicense":true,
                "hastmlicense":true,
                "department":"",
                "provider":"Employee",
                "projectrole":"TeamMember",
            "photo":""
            }    
        },
        "tasks":{
            "T-1018-17030001":{
                "intTaskId":"148962",
                "name":"task 1",
                "status":"To Do",
                "type":"Documentation",
                "priority":"High123",
                "start":"2017-03-01",
                "end":"2017-03-02",
            "members":{
                "2191":{
                    "intProjectUserId":2529,
                    "intAvailableCapacity":960,
                    "taskrole":"TaskMember"
                    }
                }
            }
        }
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get a project team
GET/project/{ProjectId}/team

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/team
    • Example:
      • /project/331/team
URI Parameters
HideShow
ProjectId
int (required) Example: 331

Get Project Swimlanes

This method serves to retrieve project swimlanes.

GET https://api.itmplatform.com/company1/project/627/swimlanes
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "KanbanProjectSwimlaneId": 1,
    "SwimlaneName": "Default",
    "Description": "desc",
    "ProjectId": 627,
    "ColorCode": "#fabe3c",
    "Order": 0
  },
  {
    "KanbanProjectSwimlaneId": 51,
    "SwimlaneName": "New Swimlane",
    "Description": "",
    "ProjectId": 627,
    "ColorCode": "#35a97a",
    "Order": 1
  },
  {
    "KanbanProjectSwimlaneId": 23,
    "SwimlaneName": "Swimlane 2",
    "Description": "desc",
    "ProjectId": 627,
    "ColorCode": "#1e98d7",
    "Order": 2
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get project swimlanes
GET/project/{ProjectId}/swimlanes

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/swimlanes
    • Example:
      • /project/627/swimlanes
URI Parameters
HideShow
ProjectId
int (required) Example: 627

InActive a project

This method serves to active/inactive a project.

DELETE https://api.itmplatform.com/company1/project/331
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "ProjectId":331,
        "StatusMessage": "Record inactive successfully",
        "StatusCode": 200
    }
    {
        "ProjectId":331,
        "StatusMessage": "Record successfully activated",
        "StatusCode": 200
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "ProjectId":0,
        "StatusMessage": "Project doesn't exist",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

InActive a project
DELETE/project/{ProjectId}

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}
    • Example:
      • /project/331
URI Parameters
HideShow
ProjectId
int (required) Example: 331

Project Progress

This method serves to retrieve a list of all progress of a particular project , including their details.

GET https://api.itmplatform.com/company1/project/331/progress
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "ProjectProgressId": 433,
    "ProjectId": 331,
    "Assessment": null,
    "DetailDescription": "",
    "ShortDescription": "Automatic follow-up",
    "PercentageCompleted": 16,
    "ReportDate": "2013-11-12T10:07:32.883Z",
    "CreatedBy": {
      "UserId": 1686,
      "EmailAddress": "torel@globalcorp360.com",
      "DisplayName": "Travis Orellana"
    },
    "AllCustomFields": {
      "test ryg": {
        "Text": "Steady",
        "Color": "Yellow"
      }
    }
  },
  {
    "ProjectProgressId": 434,
    "ProjectId": 331,
    "Assessment": {
      "AssessmentName": "No Critical 2",
      "AssessmentId": 3288,
      "AssessmentIcon": "https://app.itmplatform.com/UploadData/Iconlibrary/icon_notepad.png"
    },
    "DetailDescription": "asdfgh123",
    "ShortDescription": "Description1 update",
    "PercentageCompleted": 50,
    "ReportDate": "2013-01-01T11:39:17Z",
    "CreatedBy": {
      "UserId": 1686,
      "EmailAddress": "torel@globalcorp360.com",
      "DisplayName": "Travis Orellana"
    },
    "AllCustomFields": {
      "test ryg": {
        "Text": "Steady",
        "Color": "Yellow"
      }
    }
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get project progress
GET/project/{ProjectId}/progress

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/progress
    • Example:
      • /project/331/progress
      • For fixed urls: {AccountName}/project/331/progress
      • For urls with Filters in them:
        • {AccountName}/project/331/progress/?ProjectProgressId=432
        • {AccountName}/project/331/progress/?ProjectProgressId=432&ShortDescription=Test

Filter Operators :

  • gt - “greater than” - returns items with the specified attribute that is greater than the defined value

  • lt - “less than” - returns items with the specified attribute that is less than the defined value

  • eql - “equal to” - returns items with the specified attribute that is equal to the defined value

Conjunction operators :

  • AND - returns items that meet all filter operators

  • OR - returns items that meet at least one filter operator

Examples of Filter URL :

URI Parameters
HideShow
ProjectId
string (required) Example: 331
ProjectProgressId
string (optional) 
Assessment.AssessmentName
string (optional) 
Assessment.AssesmentId
string (optional) 
DetailDescription
string (optional) 
ShortDescription
string (optional) 
PercentageCompleted
string (optional) 
ReportDate
string (optional) 

Add a project progress

This method serves to add a project progress.

POST https://api.itmplatform.com/company1/project/331/progress
Requestswith body
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "AssessmentId" : 3011,
        "DetailDescription" : "detail description",
        "ShortDescription": "des",
        "PercentageCompleted" : 45,
        "ReportDate" : "2017-06-15T00:00:00Z"
    }
}
Responses201400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "ProjectProgressId":67,
        "StatusMessage": "Project progress inserted successfully",
        "StatusCode": 201
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "ProjectProgressId":0,
        "StatusMessage": "Project does not exists",
        "StatusCode": 400
}
{
        "ProjectProgressId":0,
        "StatusMessage": "oops some error occured while inserting project follow-up, please try again later or contact ITM Administrator",
        "StatusCode": 400
}
{
        "ProjectProgressId":0,
        "StatusMessage": "Please enter assessment",
        "StatusCode": 400
}
{
        "ProjectProgressId":0,
        "StatusMessage": "Please short description",
        "StatusCode": 400
}
{
        "ProjectProgressId":0,
        "StatusMessage": "lease enter project report date",
        "StatusCode": 400
}
{
        "ProjectProgressId":0,
        "StatusMessage": "Please enter valid report date",
        "StatusCode": 400
}
{
        "ProjectProgressId":0,
        "StatusMessage": "Please enter valid assessment",
        "StatusCode": 400
}
{
        "ProjectProgressId":0,
        "StatusMessage": "Percentage completed should be between 0 to 100",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Add a project progress
POST/project/{ProjectId}/progress

Note :Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/progress
    • Example:
      • /project/331/progress
URI Parameters
HideShow
ProjectId
int (required) Example: 331

Update a project progress

This method serves to update a project progress.

PUT https://api.itmplatform.com/company1/project/331/progress/456
Requestswith body
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "AssessmentId" : 3011,
        "DetailDescription" : "detail description",
        "ShortDescription": "des",
        "PercentageCompleted" : 45,
        "ReportDate" : "2017-06-15T00:00:00Z"
    }
}
Responses201400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "ProjectProgressId":456,
        "StatusMessage": "Project progress updated successfully",
        "StatusCode": 201
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "ProjectProgressId":0,
        "StatusMessage": "Project does not exists",
        "StatusCode": 400
}
{
        "ProjectProgressId":0,
        "StatusMessage": "Project progress does not exists",
        "StatusCode": 400
}
{
        "ProjectProgressId":0,
        "StatusMessage": "oops some error occured while inserting project follow-up, please try again later or contact ITM Administrator",
        "StatusCode": 400
}
{
        "ProjectProgressId":0,
        "StatusMessage": "Please enter assessment",
        "StatusCode": 400
}
{
        "ProjectProgressId":0,
        "StatusMessage": "Please short description",
        "StatusCode": 400
}
{
        "ProjectProgressId":0,
        "StatusMessage": "lease enter project report date",
        "StatusCode": 400
}
{
        "ProjectProgressId":0,
        "StatusMessage": "Please enter valid report date",
        "StatusCode": 400
}
{
        "ProjectProgressId":0,
        "StatusMessage": "Please enter valid assessment",
        "StatusCode": 400
}
{
        "ProjectProgressId":0,
        "StatusMessage": "Percentage completed should be between 0 to 100",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Update a project progress
PUT/project/{ProjectId}/progress/{ProjectProgressId}

Note :Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/progress/{ProjectProgressId}
    • Example:
      • /project/331/task/20441/progress/456
URI Parameters
HideShow
ProjectId
int (required) Example: 331
ProjectProgressId
int (required) Example: 456

Delete a project progress

This method serves to delete a project progress.

DELETE https://api.itmplatform.com/company1/project/331/progress/2338
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "ProjectProgressId": 2338,
        "StatusMessage": "Project progress deleted successfully",
        "StatusCode": 200
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "ProjectProgressId": 0,
        "StatusMessage": "Project progress id doesn't exist",
        "StatusCode": 400
}
{
        "ProjectProgressId": 0,
        "StatusMessage": "Project doesn't exist",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Delete a project progress
DELETE/project/{ProjectId}/progress/{ProjectProgressId}

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/progress/{ProjectProgressId}
    • Example:
      • /project/331/progress/233
URI Parameters
HideShow
ProjectId
int (required) Example: 331
ProjectProgressId
int (required) Example: 2338

Project Tasks

Get Project Tasks

This method serves to retrieve a list of all tasks of a particular project, including their details.

GET https://api.itmplatform.com/company1/project/331/tasks
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "ProjectId": 331,
    "TaskId": 20441,
    "TaskKindId": 3,
    "TaskName": "2.0  Capacitacion Manejo",
    "TaskNo": "T-331-13100001",
    "TaskType": {
      "TaskTypeId": 9846,
      "TaskTypeName": "Generic"
    },
    "TaskStatus": {
      "TaskStatusId": 8119,
      "TaskStatusName": "Completed12554"
    },
    "TaskPriority": {
      "TaskPriorityId": 7621,
      "TaskPriorityName": "Normal"
    },
    "TaskStartDate": "2009-10-01T00:00:00Z",
    "TaskEndDate": "2013-12-30T00:00:00Z",
    "TaskProgressDate": "2017-08-23T17:48:22Z",
    "BaselineStart": "2009-10-01T00:00:00Z",
    "BaselineEnd": "2013-12-30T00:00:00Z",
    "TaskTeam": {
      "TaskManagers": [
        {
          "UserId": 1688,
          "EmailAddress": "torel@globalcorp360.com",
          "DisplayName": "Travis Orellana"
        }
      ],
      "TaskTeamMembers": [
        {
          "UserId": 1686,
          "EmailAddress": "major.wyman@globalcorp360.com",
          "DisplayName": "Major Wyman"
        }
      ]
    },
    "ParentTask": {
      "ParentTaskId": 148964,
      "ParentTaskName": "summary task"
    },
    "TaskCategory": "Task",
    "TaskDuration": 1108,
    "OverAllocation": true,
    "Assessment": {
      "AssessmentName": "Good",
      "AssessmentId": 3009,
      "AssessmentIcon": "https://app.itmplatform.com/UploadData/Iconlibrary/icon_notepad.png"
    },
    "Completed": 56,
    "Expected": 100,
    "Deviation": -44,
    "DisplayInPortfolio": true,
    "IsDocumentAttached": 1,
    "IsTaskManager": false,
    "IsServices": false,
    "IsActivity": false,
    "AllCustomFields": {
      "number field": 123
    }
  },
  {
    "ProjectId": 331,
    "TaskId": 21696,
    "TaskKindId": 3,
    "TaskName": "SalesForce Comercial - Herramienta Seguimiento. LeadClick",
    "TaskNo": "T-331-13110001",
    "TaskType": {
      "TaskTypeId": 9846,
      "TaskTypeName": "Generic"
    },
    "TaskStatus": {
      "TaskStatusId": 8117,
      "TaskStatusName": "In Progress"
    },
    "TaskPriority": {
      "TaskPriorityId": 7621,
      "TaskPriorityName": "Normal"
    },
    "TaskStartDate": "2013-02-11T00:00:00Z",
    "TaskEndDate": "2013-05-01T00:00:00Z",
    "TaskProgressDate": "",
    "BaselineStart": "2013-02-11T00:00:00Z",
    "BaselineEnd": "2013-05-01T00:00:00Z",
    "TaskTeam": {
      "TaskManagers": [
        {
          "UserId": 1686,
          "EmailAddress": "major.wyman@globalcorp360.com",
          "DisplayName": "Major Wyman"
        }
      ],
      "TaskTeamMembers": [
        {
          "UserId": 1693,
          "EmailAddress": "JohnDoe@globalcorp360.com1",
          "DisplayName": "John Doe"
        }
      ]
    },
    "ParentTask": null,
    "TaskCategory": "Task",
    "TaskDuration": 58,
    "OverAllocation": true,
    "Assessment": null,
    "Completed": 0,
    "Expected": 100,
    "Deviation": -100,
    "DisplayInPortfolio": false,
    "IsDocumentAttached": 0,
    "IsTaskManager": false,
    "IsServices": false,
    "IsActivity": false,
    "AllCustomFields": {
      "number field": 0
    }
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get project tasks
GET/project/{ProjectId}/tasks

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/tasks
    • Example:
      • /project/331/tasks
      • For fixed urls: {AccountName}/project/331/tasks
      • For urls with Filters in them:
        • {AccountName}/project/311/tasks/?TaskId=20411
        • {AccountName}/project/311/tasks/?TaskId=20411&TaskName=Test
        • {AccountName}/project/311/tasks/?MemberName=test@mail.com

Filter Operators :

  • gt - “greater than” - returns items with the specified attribute that is greater than the defined value

  • lt - “less than” - returns items with the specified attribute that is less than the defined value

  • eql - “equal to” - returns items with the specified attribute that is equal to the defined value

Conjunction operators :

  • AND - returns items that meet all filter operators

  • OR - returns items that meet at least one filter operator

Examples of Filter URL :

URI Parameters
HideShow
ProjectId
string (required) Example: 331
TaskId
string (optional) Example: 2079
TaskKindId
string (optional) 
TaskName
string (optional) 
TaskNo
string (optional) 
TaskType.TaskTypeName
string (optional) 
TaskType.TaskTypeId
string (optional) 
TaskStatus.TaskStatusName
string (optional) 
TaskStatus.TaskStatusId
string (optional) 
TaskPriority.TaskPriorityName
string (optional) 
TaskPriority.TaskPriorityId
string (optional) 
TaskStartDate
string (optional) 
TaskEndDate
string (optional) 
ParentTask.ParentTaskId
string (optional) 
ParentTask.ParentTaskName
string (optional) 
TaskCategory
string (optional) 
TaskDuration
string (optional) 
Efforts.EstEffort
string (optional) 
Efforts.ActEffort
string (optional) 
TaskProgressDate
string (optional) 
OverAllocation
string (optional) 
Assessment.AssessmentName
string (optional) 
Assessment.AssessmentId
string (optional) 
Completed
string (optional) 
Expected
string (optional) 
Deviation
string (optional) 
BaselineStart
string (optional) 
BaselineEnd
string (optional) 
DisplayInPortfolio
string (optional) 
Costs.ActualCost
string (optional) 
Costs.PlannedCost
string (optional) 
Revenues.PlannedRevenue
string (optional) 
Revenues.ActualRevenue
string (optional) 
SwimlaneName.SwimlaneName
string (optional) 
SwimlaneName.SwimlaneId
string (optional) 
IsServices
string (optional) 
IsActivity
string (optional) 
MemberName
string (optional) Example: test@mail.com

Add a project task

This method serves to add a project task. Please note that you should use different syntaxes for classical and Kanban projects. Note : Entity Text is pass but need to change with primary key

POST https://api.itmplatform.com/company1/project/168/task
Requestswith body
Headers
Content-Type: application/json
Token: {Token Value}
Body
"For classical project tasks"  
{
    {
        "TaskName":"Task From API",
        "ParentTaskId":"0",
        "TaskTypeName":"Documentation",
        "TaskStatusName":"Completed",
        "TaskPriorityName":"High",
        "TaskStartDate":"2017-01-01T00:00:00Z",
        "TaskEndDate":"2017-01-02T00:00:00Z",
        "TaskManagers":"",
        "TaskMembers":"",
        "TaskTypeId" :124,
        "TaskStatusId" :145,
        "TaskPriorityId" : 123
    }

}

"For kanban project tasks" 
{
    {
        "TaskName":"kanban task",
        "TaskTypeName":"Documentation",
        "Column":"New subcolumn 12",
        "SwimlaneName":"Default",
        "TaskPriorityName":"High",
        "TaskStartDate":"2017-01-01T00:00:00Z",
        "TaskEndDate":"2017-01-02T00:00:00Z",
        "TaskManagers":"",
        "TaskMembers":"",
        "TaskStatusName": "To Do",
        "TaskTypeId" :124,
        "TaskPriorityId" : 123
    }
}
Responses201400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "TaskId":20441,
        "StatusMessage": "Task inserted successfully",
        "StatusCode": "201",
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "TaskId":0,
        "StatusMessage": "Project doesn't exist",
        "StatusCode": 400
}
{
        "TaskId":0,
        "StatusMessage": "Please enter task name",
        "StatusCode": 400
}
{
        "TaskId":0,
        "StatusMessage": "Please enter task priority",
        "StatusCode": 400
}
{
        "TaskId":0,
        "StatusMessage": "Please enter task type",
        "StatusCode": 400
}
{
        "TaskId":0,
        "StatusMessage": "Please enter valid task end date",
        "StatusCode": 400
}
{
        "TaskId":0,
        "StatusMessage": "Task start date should be less then or equal to task end date",
        "StatusCode": 400
}
{
        "TaskId":0,
        "StatusMessage": "Please enter valid task type",
        "StatusCode": 400
}
{
        "TaskId":0,
        "StatusMessage": "Please enter valid task priority",
        "StatusCode": 400
}
{
        "TaskId":0,
        "StatusMessage": "{User Emails} are not valid users",
        "StatusCode": 400
}
"For classical project tasks"   
{
        "TaskId":0,
        "StatusMessage": "Please enter task status",
        "StatusCode": 400
}
{
        "TaskId":0,
        "StatusMessage": "Please enter task start date",
        "StatusCode": 400
}
{
        "TaskId":0,
        "StatusMessage": "Please enter task end date",
        "StatusCode": 400
}
{
        "TaskId":0,
        "StatusMessage": "Please enter valid task status",
        "StatusCode": 400
}
{
        "TaskId":0,
        "StatusMessage": "Please enter valid parent task id",
        "StatusCode": 400
}
{
        "TaskId":0,
        "StatusMessage": "Please enter valid task start date",
        "StatusCode": 400
}
"For kanban project tasks"  
{
        "TaskId":0,
        "StatusMessage": "Please enter task column",
        "StatusCode": 400
}
{
        "TaskId":0,
        "StatusMessage": "Please enter swimlane name",
        "StatusCode": 400
}
{
        "TaskId":0,
        "StatusMessage": "Please enter valid kanban task column",
        "StatusCode": 400
}
{
        "TaskId":0,
        "StatusMessage": "Please enter valid swimlane name",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Add a project task
POST/project/{ProjectId}/task

Note :Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/task
    • Example:
      • /projects/168/task
URI Parameters
HideShow
ProjectId
int (required) Example: 168

Update a project task

This method serves to update a project task. Please note that you should use different syntaxes for classical and Kanban projects. Note : Entity Text is pass but need to change with primary key

PUT https://api.itmplatform.com/company1/project/12262/task/346128
Requestswith body
Headers
Content-Type: application/json
Token: {Token Value}
Body
"For classical project tasks"  
{
    {
        "TaskName":"Task From API",
        "ParentTaskId":"0",
        "TaskTypeName":"Documentation",
        "TaskStatusName":"Completed",
        "TaskPriorityName":"High",
        "TaskStartDate":"2017-01-01T00:00:00Z",
        "TaskEndDate":"2017-01-02T00:00:00Z",
        "TaskManagers":"",
        "TaskMembers":"",
        "TaskTypeId" :124,
        "TaskStatusId" :145,
        "TaskPriorityId" : 123
    }

"For kanban project tasks" 

 

{
    {
        "TaskName":"kanban task",
        "TaskTypeName":"Documentation",
        "Column":"New subcolumn 12",
        "SwimlaneName":"Default",
        "TaskPriorityName":"High",
        "TaskStartDate":"2017-01-01T00:00:00Z",
        "TaskEndDate":"2017-01-02T00:00:00Z",
        "TaskManagers":"",
        "TaskMembers":"",
        "TaskTypeId" :124,
        "TaskPriorityId" : 123
    }
}
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "TaskId":346128,
        "StatusMessage": "Task updated successfully",
        "StatusCode": 200
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "TaskId":0,
        "StatusMessage": "Please enter valid project id",
        "StatusCode": 400
}
{
        "TaskId":0,
        "StatusMessage": "Project doesn't exist",
        "StatusCode": 400
}
{
        "TaskId":0,
        "StatusMessage": "Task doesn't exists",
        "StatusCode": 400
}
{
        "TaskId":0,
        "StatusMessage": "Please enter task name",
        "StatusCode": 400
}
{
        "TaskId":0,
        "StatusMessage": "Please enter task priority",
        "StatusCode": 400
}
{
        "TaskId":0,
        "StatusMessage": "Please enter task type",
        "StatusCode": 400
}
{
        "TaskId":0,
        "StatusMessage": "Please enter task end date",
        "StatusCode": 400
}
{
        "TaskId":0,
        "StatusMessage": "Please enter valid task start date",
        "StatusCode": 400
}
{
        "TaskId":0,
        "StatusMessage": "Please enter valid task end date",
        "StatusCode": 400
}
{
        "TaskId":0,
        "StatusMessage": "Task start date should be less then or equal to task end date",
        "StatusCode": 400
}
{
        "TaskId":0,
        "StatusMessage": "Please enter valid task type",
        "StatusCode": 400
}
{
        "TaskId":0,
        "StatusMessage": "Please enter valid task priority",
        "StatusCode": 400
}
{
        "TaskId":0,
        "StatusMessage": "{User Emails} are not valid users",
        "StatusCode": 400

}

{
        "TaskId":0,
        "StatusMessage": "You cannot complete status because child tasks of this task are not completed",
        "StatusCode": 400
}
{
        "TaskId":0,
        "StatusMessage": "Time entry already exists so you cannot change task parent",
        "StatusCode": 400
}
{
        "TaskId":0,
        "StatusMessage": "Time entry already exists, therefore you cannot update task dates",
        "StatusCode": 400
}
"For classical project tasks"   
{
        "TaskId":0,
        "StatusMessage": "Please enter task status",
        "StatusCode": 400
}
{
        "TaskId":0,
        "StatusMessage": "Please enter valid task status",
        "StatusCode": 400
}
{
        "TaskId":0,
        "StatusMessage": "Please enter valid parent task id",
        "StatusCode": 400
}
{
        "TaskId":0,
        "StatusMessage": "Please enter task start date",
        "StatusCode": 400
}
"For kanban project tasks" 
{
        "TaskId":0,
        "StatusMessage": "Please enter valid kanban task column",
        "StatusCode": 400
}
{
        "TaskId":0,
        "StatusMessage": "Please enter valid swimlane name",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Update a project task
PUT/project/{ProjectId}/task/{TaskId}

Note :Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/task/{TaskId}
    • Example:
      • /projects/12262/task/34612
URI Parameters
HideShow
ProjectId
int (required) Example: 12262
TaskId
int (required) Example: 346128

Delete a project task

This method serves to delete a project task.

DELETE https://api.itmplatform.com/company1/project/331/task/12262
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "TaskId": 12262,
        "StatusMessage": "Task deleted successfully",
        "StatusCode": 200
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "TaskId":0,
        "StatusMessage": "Cannot delete task, reference is already in use",
        "StatusCode": 400
}
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "TaskId":0,
        "StatusMessage": "Task doesn't exist",
        "StatusCode": 400
}
{
        "TaskId":0,
        "StatusMessage": "Project doesn't exist",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Delete a project task
DELETE/project/{ProjectId}/task/{TaskId}

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/task/{TaskId}
    • Example:
      • /project/331/task/12262
URI Parameters
HideShow
ProjectId
int (required) Example: 331
TaskId
int (required) Example: 12262

Get a project task

This method serves to retrieve a project task detail.

GET https://api.itmplatform.com/company1/project/331/task/20441
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "ProjectId": 331,
        "TaskId": 20441,
        "TaskNo": "T-331-13100001",
        "TaskName": "2.0  Capacitacion Manejo",
        "ParentTaskName": "summary task",
        "TaskTypeName": "Generic",
        "TaskTypeId": 9846,
        "TaskStatusName": "Completed",
        "TaskStatusId": 8119,
        "TaskPriorityName": "Normal",
        "TaskPriorityId": 7621,
        "TaskDuration": 1108,
        "TaskStartDate": "2009-10-01T00:00:00Z",
        "TaskEndDate": "2013-12-30T00:00:00Z",
        "DisplayInPortfolio": true,
        "ParentTaskId": 148964,
        "TaskCategory": "Task",
        "TaskDetails": "description",
        "TaskKindId": 3,
        "SwimlaneName": "",
        "Column": "",
        "EstEffort": "128:00",
        "ActEffort": "700:00",
        "ActualEffortTimeEntry": "488:00",
        "ActualCost": 35000,
        "PlannedCost": 3706.5,
        "PlannedRevenue": 100,
        "ActualRevenue": 0,
        "IsActivity": false
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get a project task
GET/project/{ProjectId}/task/{TaskId}

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/task/{TaskId}
    • Example:
      • /project/331/task/20441
URI Parameters
HideShow
ProjectId
int (required) Example: 331
TaskId
int (required) Example: 20441

Get project multiple tasks

This method serves to retrieve task detail list by comma separated task id’s

GET https://api.itmplatform.com/company1/project/331/tasks/20441,21696
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "ProjectId": 331,
    "TaskId": 20441,
    "TaskNo": "T-331-13100001",
    "TaskName": "2.0  Capacitacion Manejo ",
    "ParentTaskName": "summary task",
    "TaskTypeName": "Generic",
    "TaskTypeId": 9846,
    "TaskStatusName": "Completed12554",
    "TaskStatusId": 8119,
    "TaskPriorityName": "Normal",
    "TaskPriorityId": 7621,
    "TaskDuration": 1108,
    "TaskStartDate": "2009-10-01T00:00:00Z",
    "TaskEndDate": "2013-12-30T00:00:00Z",
    "DisplayInPortfolio": true,
    "ParentTaskId": 148964,
    "TaskCategory": "Task",
    "TaskDetails": "description",
    "TaskKindId": 3,
    "SwimlaneName": "",
    "Column": "",
    "EstEffort": "128:00",
    "ActEffort": "700:00",
    "ActualEffortTimeEntry": "488:00",
    "ActualCost": 35000,
    "PlannedCost": 3706.5,
    "PlannedRevenue": 100,
    "ActualRevenue": 0,
    "IsActivity": false
  },
  {
    "ProjectId": 331,
    "TaskId": 21696,
    "TaskNo": "T-331-13110001",
    "TaskName": "SalesForce Comercial - Herramienta Seguimiento. LeadClick",
    "ParentTaskName": "",
    "TaskTypeName": "Generic",
    "TaskTypeId": 9846,
    "TaskStatusName": "In Progress",
    "TaskStatusId": 8117,
    "TaskPriorityName": "Normal",
    "TaskPriorityId": 7621,
    "TaskDuration": 58,
    "TaskStartDate": "2013-02-11T00:00:00Z",
    "TaskEndDate": "2013-05-01T00:00:00Z",
    "DisplayInPortfolio": false,
    "ParentTaskId": 0,
    "TaskCategory": "Task",
    "TaskDetails": "Test Description After Edit.",
    "TaskKindId": 3,
    "SwimlaneName": "",
    "Column": "",
    "EstEffort": "34:00",
    "ActEffort": "00:00",
    "ActualEffortTimeEntry": "197:00",
    "ActualCost": 720,
    "PlannedCost": 1700,
    "PlannedRevenue": 0,
    "ActualRevenue": 0,
    "IsActivity": false
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get project multiple tasks
GET/project/{ProjectId}/tasks/{TaskIds}

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/tasks/{TaskIds}
    • Example:
      • /project/331/tasks/20441,21696
URI Parameters
HideShow
ProjectId
int (required) Example: 331
TaskIds
string (required) Example: 20441,21696

Get a project task team

This method serves to retrieve a project task team details

GET https://api.itmplatform.com/company1/project/331/task/11334/team
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "SrNo": "1",
    "UserId": 1686,
    "UserName": "jucli@globalcorp360.com",
    "LastName": "Julio",
    "FirstName": "Cline",
    "ServiceAlias": "Julio Cline",
    "UserId1": 1686,
    "TaskUserId": 1415,
    "ProjectUserId": 706,
    "UserRole": "Manager",
    "DepartmentName": "",
    "PositionName": ""
  },
  {
    "SrNo": "2",
    "UserId": 1693,
    "UserName": "stakeholder@globalcorp360.com",
    "LastName": "User",
    "FirstName": "New",
    "ServiceAlias": "New User",
    "UserId1": 1693,
    "TaskUserId": 1531,
    "ProjectUserId": 720,
    "UserRole": "Manager",
    "DepartmentName": "Asp.Net\\MVC\\MVC 2",
    "PositionName": "SE"
  },
  {
    "SrNo": "3",
    "UserId": 2332,
    "UserName": "John.Doe@globalcorp360.com",
    "LastName": "John",
    "FirstName": "Doe",
    "ServiceAlias": "John Doe",
    "UserId1": 2332,
    "TaskUserId": 7751,
    "ProjectUserId": 2528,
    "UserRole": "Manager",
    "DepartmentName": "",
    "PositionName": "TL"
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get a project task team
GET/project/{ProjectId}/task/{TaskId}/team

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/task/{TaskId}/team
    • Example:
      • /project/331/task/11334/team
URI Parameters
HideShow
ProjectId
int (required) Example: 331
TaskId
int (required) Example: 11334

Delete a project task team

This method serves to delete a project task task team

DELETE https://api.itmplatform.com/company1/project/331/task/123/team/2986
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "StatusMessage": "Deleted Successfully",
        "StatusCode": 200
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Cannot delete reference, Actual Effort Accepted is already entered",
        "StatusCode": 400
}
{
        "StatusMessage": "Cannot delete reference, already in time entry",
        "StatusCode": 400
}
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Delete a project task team
DELETE/project/{ProjectId}/task/{TaskId}/team/{TaskUserId}

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/task/{TaskId}/team/{TaskUserId}
    • Example:
      • /project/331/task/123/team/45678
URI Parameters
HideShow
ProjectId
int (required) Example: 331
TaskId
int (required) Example: 123
TaskUserId
int (required) Example: 2986

Assign a project task team

This method serves to assign a project task team. TaskManager specifies that user is task manager or not.

POST https://api.itmplatform.com/company1/project/331/task/123/team/2345,345/false
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "StatusMessage": "User Assigned successfully.",
        "StatusCode": 200
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Assign a project task team
POST/project/{ProjectId}/task/{TaskId}/team/{ProjectUserIds}/{TaskManager}

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/task/{TaskId}/team/{ProjectUserIds}/{TaskManager}
    • Example:
      • /project/331/task/123/team/45678/false
URI Parameters
HideShow
ProjectId
int (required) Example: 331
TaskId
int (required) Example: 123
ProjectUserIds
string (required) Example: 2345,345
TaskManager
bool (required) Example: false

Get kanban task statuses

This method serves to retrieve kanban task statuses.

GET https://api.itmplatform.com/company1/project/331/kanbantaskstatuses
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "KanbanTaskStatusId": 138,
    "KanbanStatusName": "Analysis123",
    "Order": 0,
    "ParentKanbanTaskStatusId": 0,
    "IsSelected": true,
    "StatusLevel": 0,
    "IsDisabled": false
  },
  {
    "KanbanTaskStatusId": 160,
    "KanbanStatusName": "Test",
    "Order": 1,
    "ParentKanbanTaskStatusId": 0,
    "IsSelected": true,
    "StatusLevel": 0,
    "IsDisabled": false
  },
  {
    "KanbanTaskStatusId": 961,
    "KanbanStatusName": "New subcolumn 52",
    "Order": 0,
    "ParentKanbanTaskStatusId": 160,
    "IsSelected": true,
    "StatusLevel": 1,
    "IsDisabled": false
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "StatusMessage": "Please enter kanban project id",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get kanban task statuses
GET/project/{ProjectId}/kanbantaskstatuses

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/kanbantaskstatuses
    • Example:
      • /Project/627/kanbantaskstatuse
URI Parameters
HideShow
ProjectId
int (required) Example: 331

Project Task Progress

This method serves to retrieve a list of all progress of a particular project task, including their details.

GET https://api.itmplatform.com/company1/project/331/task/20441/progress
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "TaskProgressId": 12891,
    "TaskId": 20441,
    "TaskName": "2.0  Capacitacion Manejo",
    "ProjectId": 331,
    "Assessment": {
      "AssessmentName": "Crítico",
      "AssessmentId": 3011,
      "AssessmentIcon": "https://app.itmplatform.com/App_Themes/Default/Images/Red.png"
    },
    "DetailDescription": "",
    "ShortDescription": "dfdsf",
    "PercentageCompleted": 56,
    "ReportDate": "2017-06-28T15:13:22Z",
    "CreatedBy": "Major Wyman",
    "TaskManagers": [
      {
        "UserId": 1686,
        "EmailAddress": "major.wyman@globalcorp360.com",
        "DisplayName": "Major Wyman"
      },
      {
        "UserId": 1693,
        "EmailAddress": "JohnDoe@globalcorp360.com1",
        "DisplayName": "John Doe"
      }
    ]
  },
  {
    "TaskProgressId": 12877,
    "TaskId": 20441,
    "TaskName": "2.0  Capacitacion Manejo",
    "ProjectId": 331,
    "Assessment": {
      "AssessmentName": "sdf",
      "AssessmentId": 5278,
      "AssessmentIcon": null
    },
    "DetailDescription": "test descriptio",
    "ShortDescription": "followup1",
    "PercentageCompleted": 56,
    "ReportDate": "2017-06-09T15:13:37Z",
    "CreatedBy": "Major Wyman",
    "TaskManagers": [
      {
        "UserId": 1686,
        "EmailAddress": "major.wyman@globalcorp360.com",
        "DisplayName": "Major Wyman"
      },
      {
        "UserId": 1693,
        "EmailAddress": "JohnDoe@globalcorp360.com1",
        "DisplayName": "John Doe"
      }
    ]
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get project task progress
GET/project/{ProjectId}/task/{TaskId}/progress

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/task/{TaskId}/progress
    • Example:
      • /project/331/task/20441/progress
      • For fixed urls: {AccountName}/project/331/task/20441/progress
      • For urls with Filters in them:
        • {AccountName}/project/331/task/20441/progress/?TaskProgressId=12891
        • {AccountName}/project/331/task/20441/progress/?TaskProgressId=12891&ShortDescription=Test

Filter Operators :

  • gt - “greater than” - returns items with the specified attribute that is greater than the defined value

  • lt - “less than” - returns items with the specified attribute that is less than the defined value

  • eql - “equal to” - returns items with the specified attribute that is equal to the defined value

Conjunction operators :

  • AND - returns items that meet all filter operators

  • OR - returns items that meet at least one filter operator

Examples of Filter URL :

URI Parameters
HideShow
ProjectId
int (required) Example: 331
TaskId
int (required) Example: 20441
TaskName
string (optional) 
TaskProgressId
string (optional) 
Assessment.AssessmentName
string (optional) 
Assessment.AssesmentId
string (optional) 
DetailDescription
string (optional) 
ShortDescription
string (optional) 
PercentageCompleted
string (optional) 
ReportDate
string (optional) 

GET a project task progress

This method serves to retrieve a project task progress detail

GET https://api.itmplatform.com/company1/project/331/task/20441/progress/12535
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "TaskProgressId": 12876,
    "TaskId": 20441,
    "TaskName": "2.0  Capacitacion Manejo",
    "ProjectId": 331,
    "ReportDate": "2017-06-02T12:00:12Z",
    "CreatedBy": "Harshad Bhola",
    "AssessmentName": "No Critical 2",
    "AssessmentPath": "https://app.itmplatform.com/UploadData/Iconlibrary/icon_notepad.png",
    "AssesmentId": 3288,
    "DetailDescription": "",
    "ShortDescription": "new follow up",
    "PercentageCompleted": 56,
    "TaskManager": "Major Wyman,John Doe"
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get a project task progress
GET/project/{ProjectId}/task/{TaskId}/progress/{TaskProgressId}

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/task/{TaskId}/progress/{TaskProgressId}
    • Example:
      • /project/331/task/20441/progress/12535
URI Parameters
HideShow
ProjectId
int (required) Example: 331
TaskId
int (required) Example: 20441
TaskProgressId
int (required) Example: 12535

Delete a project task progress

This method serves to delete a project task progress.

DELETE https://api.itmplatform.com/company1/project/331/task/20441/progress/2338
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "TaskProgressId": 2338,
        "StatusMessage": "Task progress deleted successfully",
        "StatusCode": 200
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "TaskProgressId": 0,
        "StatusMessage": "Project doesn't exist",
        "StatusCode": 400
}
{
        "TaskProgressId": 0,
        "StatusMessage": "Task doesn't exist",
        "StatusCode": 400
}
{
        "TaskProgressId": 0,
        "StatusMessage": "Task progress id doesn't exist",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Delete a project task progress
DELETE/project/{ProjectId}/task/{TaskId}/progress/{TaskProgressId}

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/task/{TaskId}/progress/{TaskProgressId}
    • Example:
      • /project/331/task/20441/progress/233
URI Parameters
HideShow
ProjectId
int (required) Example: 331
TaskId
int (required) Example: 20441
TaskProgressId
int (required) Example: 2338

Add a project task progress

This method serves to add a project task progress.

POST https://api.itmplatform.com/company1/project/331/task/20441/progress
Requestswith body
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "AssessmentId" : 1234,
        "DetailDescription" : "detail description",
        "ShortDescription": "des",
        "PercentageCompleted" : 45,
        "ReportDate" : "2017-06-15T00:00:00Z"
    }
}
Responses201400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "TaskProgressId":67,
        "StatusMessage": "Task progress inserted successfully",
        "StatusCode": 201
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "TaskProgressId": 0,
        "StatusMessage": "Task does not exists",
        "StatusCode": 400
}
{
        "TaskProgressId": 0,
        "StatusMessage": "Project does not exists.",
        "StatusCode": 400
}
{
        "TaskProgressId": 0,
        "StatusMessage": "Please enter short description",
        "StatusCode": 400
}
{
        "TaskProgressId": 0,
        "StatusMessage": "Please enter assesment id greater than 0",
        "StatusCode": 400
}
{
        "TaskProgressId": 0,
        "StatusMessage": "Please enter valid assessment id",
        "StatusCode": 400
}
{
        "TaskProgressId": 0,
        "StatusMessage": "Please enter report date",
        "StatusCode": 400
}
{
        "TaskProgressId": 0,
        "StatusMessage": "Please enter valid report date",
        "StatusCode": 400
}
{
        "TaskProgressId": 0,
        "StatusMessage": "Please enter percentage completed",
        "StatusCode": 400
}
{
        "TaskProgressId": 0,
        "StatusMessage": "Percentage completed should be between 0 to 100",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Add a project task progress
POST/project/{ProjectId}/task/{TaskId}/progress

Note :Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/task/{TaskId}/progress
    • Example:
      • /project/331/task/20441/progress
URI Parameters
HideShow
ProjectId
int (required) Example: 331
TaskId
int (required) Example: 20441

Update a project task progress

This method serves to update a project task progress.

PUT https://api.itmplatform.com/company1/project/331/task/20441/progress/456
Requestswith body
Headers
Content-Type: application/json
Token: {Token Valu
Body
{
    {
        "AssessmentId" : 67,
        "DetailDescription" : "detail description",
        "ShortDescription": "des",
        "PercentageCompleted" : 45,
        "ReportDate" : "2017-06-15T00:00:00Z"
    }
}
Responses201400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "TaskProgressId":456,
        "StatusMessage": "Task progress updated successfully",
        "StatusCode": 201
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "TaskProgressId": 0,
        "StatusMessage": "Task progress doesn't exist",
        "StatusCode": 400
}
{
        "TaskProgressId": 0,
        "StatusMessage": "Task does not exists",
        "StatusCode": 400
}
{
        "TaskProgressId": 0,
        "StatusMessage": "Project does not exists.",
        "StatusCode": 400
}
{
        "TaskProgressId": 0,
        "StatusMessage": "Please enter short description",
        "StatusCode": 400
}
{
        "TaskProgressId": 0,
        "StatusMessage": "Please enter assesment id greater than 0",
        "StatusCode": 400
}
{
        "TaskProgressId": 0,
        "StatusMessage": "Please enter valid assessment id",
        "StatusCode": 400
}
{
        "TaskProgressId": 0,
        "StatusMessage": "Please enter report date",
        "StatusCode": 400
}
{
        "TaskProgressId": 0,
        "StatusMessage": "Please enter valid report date",
        "StatusCode": 400
}
{
        "TaskProgressId": 0,
        "StatusMessage": "Please enter percentage completed",
        "StatusCode": 400
}
{
        "TaskProgressId": 0,
        "StatusMessage": "Percentage completed should be between 0 to 100",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Update a project task progress
PUT/project/{ProjectId}/task/{TaskId}/progress/{TaskProgressId}

Note :Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/task/{TaskId}/progress/{TaskProgressId}
    • Example:
      • /project/331/task/20441/progress/456
URI Parameters
HideShow
ProjectId
int (required) Example: 331
TaskId
int (required) Example: 20441
TaskProgressId
int (required) Example: 456

GET project task effort by professional category

This method serves to retrieve project task effort work by professional category

GET https://api.itmplatform.com/company1/project/331/task/20441/effortbyprofessionalcategory
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "Category": {
      "MasterCategoryId": 403,
      "CategoryId": 2895,
      "CategoryName": "Software Engineer",
      "CategoryTypeId": 3,
      "CategoryTypeName": "External"
    },
    "IsAutomaticActualEffortAccepted": false,
    "Efforts": {
      "AssignedEffort": "20:00",
      "UnAssignedEffort": "0:00",
      "ActualEffortAccepted": "200:00",
      "ActualEffortByTimeEntry": "0:00",
      "TotalEstimatedEffort": "20:00"
    },
    "IsOverload": true,
    "OverloadDate": "2012-12-10T00:00:00Z",
    "IsDelete": true
  },
  {
    "Category": {
      "MasterCategoryId": 379,
      "CategoryId": 2693,
      "CategoryName": "Default One",
      "CategoryTypeId": 2,
      "CategoryTypeName": "Internal"
    },
    "IsAutomaticActualEffortAccepted": false,
    "Efforts": {
      "AssignedEffort": "20:00",
      "UnAssignedEffort": "0:00",
      "ActualEffortAccepted": "500:00",
      "ActualEffortByTimeEntry": "476:00",
      "TotalEstimatedEffort": "20:00"
    },
    "IsOverload": true,
    "OverloadDate": "2012-12-10T00:00:00Z",
    "IsDelete": true
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get project task effort by professional category
GET/project/{ProjectId}/task/{TaskId}/effortbyprofessionalcategory

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/task/{TaskId}/effortbyprofessionalcategory
    • Example:
      • /project/331/task/20441/effortbyprofessionalcategory
URI Parameters
HideShow
ProjectId
int (required) Example: 331
TaskId
int (required) Example: 20441

GET project task effort by team member

This method serves to retrieve project task effort by team member

GET https://api.itmplatform.com/company1/project/331/task/20441/effortbyteammember
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "Category": {
      "MasterCategoryId": 379,
      "CategoryId": 2693,
      "CategoryName": "Default One",
      "CategoryTypeId": 2,
      "CategoryTypeName": "Internal"
    },
    "IsAutomaticActualEffortAccepted": false,
    "Efforts": {
      "ActualEffortAccepted": "500:00",
      "ActualEffortByTimeEntry": "408:00",
      "EstimatedEffort": "20:00"
    },
    "User": {
      "UserId": 1686,
      "EmailAddress": "major.wyman@globalcorp360.com",
      "DisplayName": "Major Wyman"
    },
    "IsOverload": true,
    "OverloadDate": "2012-12-28T00:00:00Z",
    "TaskUserId": 1415,
    "IsPECGeneratedByTask": false
  },
  {
    "Category": {
      "MasterCategoryId": 403,
      "CategoryId": 2895,
      "CategoryName": "Software Engineer",
      "CategoryTypeId": 3,
      "CategoryTypeName": "External"
    },
    "IsAutomaticActualEffortAccepted": false,
    "Efforts": {
      "ActualEffortAccepted": "200:00",
      "ActualEffortByTimeEntry": "68:00",
      "EstimatedEffort": "20:00"
    },
    "User": {
      "UserId": 1693,
      "EmailAddress": "JohnDoe@globalcorp360.com1",
      "DisplayName": "John Doe"
    },
    "IsOverload": true,
    "OverloadDate": "2012-12-10T00:00:00Z",
    "TaskUserId": 1531,
    "IsPECGeneratedByTask": false
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get project task effort work by team member
GET/project/{ProjectId}/task/{TaskId}/effortbyteammember

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/task/{TaskId}/effortbyteammember
    • Example:
      • /project/331/task/20441/effortbyteammember
URI Parameters
HideShow
ProjectId
int (required) Example: 331
TaskId
int (required) Example: 20441

Add project task effort categories

This method serves to add project task effort categories.

POST https://api.itmplatform.com/company1/project/331/task/20441/categories
Requestswith body
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "CategoryId": 379,
    "CategoryType": "2"
  }
]
Responses201400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "StatusMessage": "Categories Inserted Successfully",
        "StatusCode": 201
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "StatusMessage": "Error Occured while Inserting Categories",
        "StatusCode": 400
}
{
        "StatusMessage": "Category already inserted",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Add project task effort categories
POST/project/{ProjectId}/task/{TaskId}/categories

Note :Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/task/{TaskId}/categories
    • Example:
      • /project/331/task/20441/categories
URI Parameters
HideShow
ProjectId
int (required) Example: 331
TaskId
int (required) Example: 20441

Delete project task effort category

This method serves to delete project task effort category.

DELETE https://api.itmplatform.com/company1/project/331/task/20441/category/379
Requestswith body
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "CategoryId": 602,
        "CategoryType": "2"
    } 
}
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "StatusMessage": "Deleted Successfully",
        "StatusCode": 200
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "StatusMessage": "Error Occured while Deleting",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Delete project task effort category
DELETE/project/{ProjectId}/task/{TaskId}/category/{CategoryId}

Note :Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/task/{TaskId}/category/{CategoryId}
    • Example:
      • /project/331/task/20441/category/379
URI Parameters
HideShow
ProjectId
int (required) Example: 331
TaskId
int (required) Example: 20441
CategoryId
int (required) Example: 379

Update a project Task Effort

This method serves to update a project Task Effort. Please note that you should use different syntaxes for classical and Kanban tasks

PUT https://api.itmplatform.com/company1/project/12262/task/20441/effort
Requestswith body
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
    {
        "TaskId": "22297",
        "EstimatedHours": "0",
        "EstimatedMins": 0
    }
],

[
    {
        "TaskUserId": 1746,
        "EstimatedHours": 0,
        "EstimatedMins": 0,
        "ActualEffortAcceptedHours": 20,
        "ActualEffortAcceptedMins": 0,
        "AutomaticActualEffortAccepted": false,
        "TaskId": "22297"
    },
    {    
        "TaskUserId": 1747,
        "EstimatedHours": 0,
        "EstimatedMins": 0,
        "ActualEffortAcceptedHours": 0,
        "ActualEffortAcceptedMins": 0,
        "AutomaticActualEffortAccepted": true,
        "TaskId": "22297"
    },
    {
        "TaskUserId": 1748,
        "EstimatedHours": 0,
        "EstimatedMins": 0,
        "ActualEffortAcceptedHours": 0,
        "ActualEffortAcceptedMins": 0,
        "AutomaticActualEffortAccepted": true,
        "TaskId": "22297"
    },
    {
        "TaskUserId": 1749,
        "EstimatedHours": 0,
        "EstimatedMins": 0,
        "ActualEffortAcceptedHours": 0,
        "ActualEffortAcceptedMins": 0,
        "AutomaticActualEffortAccepted": true,
        "TaskId": "22297"
    },
    {
        "TaskUserId": 1750,
        "EstimatedHours": 0,
        "EstimatedMins": 0,
        "ActualEffortAcceptedHours": 0,
        "ActualEffortAcceptedMins": 0,
        "AutomaticActualEffortAccepted": true,
        "TaskId": "22297"
    }
],
[{}],
[
    {
        "CategoryId": 403,
        "CategoryType": 3,
        "NonAssignedEffort": "0",
        "NonAssignedEffortMins": 0,
        "ActualEffortAcceptedHours": 0,
        "ActualEffortAcceptedMins": 0,
        "AutomaticActualEffortAccepted": true
    },
    {
        "CategoryId": 379,
        "CategoryType": 1,
        "NonAssignedEffort": "0",
        "NonAssignedEffortMins": 0,
        "ActualEffortAcceptedHours": 0,
        "ActualEffortAcceptedMins": 0,
        "AutomaticActualEffortAccepted": true
    },
    {
        "CategoryId": 0,
        "CategoryType": 0,
        "NonAssignedEffort": "0",
        "NonAssignedEffortMins": 0,
        "ActualEffortAcceptedHours": 0,
        "ActualEffortAcceptedMins": 0,
        "AutomaticActualEffortAccepted": true
    }
]

 ]

]

For Kanban Task 

 

[
    [{}],
    [
        {
            "TaskUserId": 7811,
            "EstimatedHours": 200,
            "EstimatedMins": 0,
            "ActualEffortAcceptedHours": 100,
            "ActualEffortAcceptedMins": 0,
            "AutomaticActualEffortAccepted": false,
            "TaskId": "146322"
        },
        {
            "TaskUserId": 7812,
            "EstimatedHours": 300,
            "EstimatedMins": 0,
            "ActualEffortAcceptedHours": 0,
            "ActualEffortAcceptedMins": 0,
            "AutomaticActualEffortAccepted": true,
            "TaskId": "146322"
        },
        {
            "TaskUserId": 7813,
            "EstimatedHours": 0,
            "EstimatedMins": 0,
            "ActualEffortAcceptedHours": 0,
            "ActualEffortAcceptedMins": 0,
            "AutomaticActualEffortAccepted": true,
            "TaskId": "146322"
        },
        {
            "TaskUserId": 7814,
            "EstimatedHours": 0,
            "EstimatedMins": 0,
            "ActualEffortAcceptedHours": 0,
            "ActualEffortAcceptedMins": 0,
            "AutomaticActualEffortAccepted": true,
            "TaskId": "146322"
        }
    ],
    [
        {
            "TaskId": "146322",
            "TaskEstHour": 500,
            "TaskEstmin": 0
        }
    ],
    [{}]
]
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "StatusMessage": "Updated Successfully",
        "StatusCode": "200"
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Update a project Task Effort
PUT/project/{ProjectId}/task/{TaskId}/effort

Note :Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/task/{TaskId}/effort
    • Example:
      • /project/331/task/20441/effort
URI Parameters
HideShow
ProjectId
int (required) Example: 12262
TaskId
int (required) Example: 20441

Add project task from gantt

This method serves to add project tasks from gantt board.

POST https://api.itmplatform.com/company1/project/1070/gantttask
Requestswith body
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "TaskPrefix": null,
    "StartDate": "2017-05-08T00:00:00+05:30",
    "EndDate": "2017-05-09T00:00:00+05:30",
    "Percentage": 0,
    "IsAutomaticFollowupSchedultTab": false,
    "ParentId": 0,
    "leaf": true,
    "id": 0,
    "Name": "New task 3",
    "PercentDone": 0,
    "strTaskNo": "T-000-00000001",
    "strParentTaskId": null,
    "TaskKindId": 3,
    "URL": null,
    "LockStatus": 0,
    "Index": 2,
    "PhantomId": "ext-record-87",
    "PhantomParentId": "",
    "Resizable": false,
    "Draggable": false,
    "intParentTaskId": 0
  },
  {
    "TaskPrefix": null,
    "StartDate": "2017-05-08T00:00:00+05:30",
    "EndDate": "2017-05-09T00:00:00+05:30",
    "Percentage": 0,
    "IsAutomaticFollowupSchedultTab": false,
    "ParentId": 0,
    "leaf": true,
    "id": 0,
    "Name": "New task 4",
    "PercentDone": 0,
    "strTaskNo": "T-000-00000002",
    "strParentTaskId": null,
    "TaskKindId": 3,
    "URL": null,
    "LockStatus": 0,
    "Index": 3,
    "PhantomId": "ext-record-88",
    "PhantomParentId": "",
    "Resizable": false,
    "Draggable": false,
    "intParentTaskId": 0
  }
]
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "DicParentTask": [],
  "TaskData": [
    {
      "TaskPrefix": null,
      "StartDate": "2017-05-08T00:00:00",
      "EndDate": "2017-05-09T00:00:00",
      "Percentage": 0,
      "IsAutomaticFollowupSchedultTab": false,
      "ParentId": 0,
      "leaf": true,
      "id": 153809,
      "Name": "New task 3",
      "PercentDone": 0,
      "strTaskNo": "T-1070-17050001",
      "strParentTaskId": "",
      "TaskKindId": 3,
      "URL": "http://app.itmplatform.com/GlobalCorp360/UserPages/TaskDetail.aspx?pid=1070&tid=153809&tk=3",
      "LockStatus": 0,
      "Index": 2,
      "PhantomId": "ext-record-87",
      "PhantomParentId": "",
      "Resizable": true,
      "Draggable": true,
      "intParentTaskId": 0
    },
    {
      "TaskPrefix": null,
      "StartDate": "2017-05-08T00:00:00",
      "EndDate": "2017-05-09T00:00:00",
      "Percentage": 0,
      "IsAutomaticFollowupSchedultTab": false,
      "ParentId": 0,
      "leaf": true,
      "id": 153810,
      "Name": "New task 4",
      "PercentDone": 0,
      "strTaskNo": "T-1070-17050002",
      "strParentTaskId": "",
      "TaskKindId": 3,
      "URL": "http://app.itmplatform.com/GlobalCorp360/UserPages/TaskDetail.aspx?pid=1070&tid=153810&tk=3",
      "LockStatus": 0,
      "Index": 3,
      "PhantomId": "ext-record-88",
      "PhantomParentId": "",
      "Resizable": true,
      "Draggable": true,
      "intParentTaskId": 0
    }
  ]
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "StatusMessage": "Please enter task name",
        "StatusCode": 400
}
{
        "StatusMessage": "Please enter task status",
        "StatusCode": 400
}
{
        "StatusMessage": "Please enter task priority",
        "StatusCode": 400
}
{
        "StatusMessage": "Please enter task type",
        "StatusCode": 400
}
{
        "StatusMessage": "Please enter task start date",
        "StatusCode": 400
}
{
        "StatusMessage": "Please enter task end date",
        "StatusCode": 400
}
{
        "StatusMessage": "Please enter valid task start date",
        "StatusCode": 400
}
{
        "StatusMessage": "Please enter valid task end date",
        "StatusCode": 400
}
{
        "StatusMessage": "Please enter valid task end date",
        "StatusCode": 400
}
{
        "StatusMessage": "Task start date should be less then or equal to task end date",
        "StatusCode": 400
}
{
        "StatusMessage": "TPlease enter valid task status",
        "StatusCode": 400
}
{
        "StatusMessage": "Please enter valid task type",
        "StatusCode": 400
}
{
        "StatusMessage": "Please enter valid task priority",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Add project task from gantt
POST/project/{ProjectId}/gantttask

Note :Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/gantttask
    • Example:
      • /project/1070/gantttask
URI Parameters
HideShow
ProjectId
int (required) Example: 1070

Update project task from gantt

This method serves to update project tasks from gantt board.

PUT https://api.itmplatform.com/company1/project/1070/gantttask
Requestswith body
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "TaskPrefix": null,
    "StartDate": "2017-05-08T00:00:00+05:30",
    "EndDate": "2017-05-09T00:00:00+05:30",
    "Percentage": 0,
    "IsAutomaticFollowupSchedultTab": false,
    "ParentId": 0,
    "leaf": true,
    "id": 153809,
    "Name": "New task 3 update",
    "PercentDone": 0,
    "strTaskNo": "T-1070-17050001",
    "strParentTaskId": null,
    "TaskKindId": 3,
    "URL": null,
    "LockStatus": 0,
    "Index": 0,
    "PhantomId": "",
    "PhantomParentId": "",
    "Resizable": false,
    "Draggable": false,
    "intParentTaskId": 0
  },
  {
    "TaskPrefix": null,
    "StartDate": "2017-05-08T00:00:00+05:30",
    "EndDate": "2017-05-09T00:00:00+05:30",
    "Percentage": 0,
    "IsAutomaticFollowupSchedultTab": false,
    "ParentId": 0,
    "leaf": true,
    "id": 153810,
    "Name": "New task 4 update",
    "PercentDone": 0,
    "strTaskNo": "T-1070-17050002",
    "strParentTaskId": null,
    "TaskKindId": 3,
    "URL": null,
    "LockStatus": 0,
    "Index": 1,
    "PhantomId": "",
    "PhantomParentId": "",
    "Resizable": false,
    "Draggable": false,
    "intParentTaskId": 0
  }
]
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "TaskPrefix": null,
    "StartDate": "2017-05-08T00:00:00",
    "EndDate": "2017-05-09T00:00:00",
    "Percentage": 0,
    "IsAutomaticFollowupSchedultTab": false,
    "ParentId": 0,
    "leaf": true,
    "id": 153809,
    "Name": "New task 3 update",
    "PercentDone": 0,
    "strTaskNo": "T-1070-17050001",
    "strParentTaskId": "",
    "TaskKindId": 3,
    "URL": "http://app.itmplatform.com/GlobalCorp360/UserPages/TaskDetail.aspx?pid=1070&tid=153809&tk=3",
    "LockStatus": 0,
    "Index": 0,
    "PhantomId": "",
    "PhantomParentId": "",
    "Resizable": true,
    "Draggable": true,
    "intParentTaskId": 0
  },
  {
    "TaskPrefix": null,
    "StartDate": "2017-05-08T00:00:00",
    "EndDate": "2017-05-09T00:00:00",
    "Percentage": 0,
    "IsAutomaticFollowupSchedultTab": false,
    "ParentId": 0,
    "leaf": true,
    "id": 153810,
    "Name": "New task 4 update",
    "PercentDone": 0,
    "strTaskNo": "T-1070-17050002",
    "strParentTaskId": "",
    "TaskKindId": 3,
    "URL": "http://app.itmplatform.com/GlobalCorp360/UserPages/TaskDetail.aspx?pid=1070&tid=153810&tk=3",
    "LockStatus": 0,
    "Index": 1,
    "PhantomId": "",
    "PhantomParentId": "",
    "Resizable": true,
    "Draggable": true,
    "intParentTaskId": 0
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Update project task from gantt
PUT/project/{ProjectId}/gantttask

Note :Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/gantttask
    • Example:
      • /project/1070/gantttask
URI Parameters
HideShow
ProjectId
int (required) Example: 1070

Get project task dependencies

This method serves to get project task dependencies.

GET https://api.itmplatform.com/company1/project/1070/taskdependencies
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        <Links>
        <Link>
        <Id>42404</Id>
        <From>153809</From>
        <To>153811</To>
        <Type>0</Type>
        </Link>
        <Link>
        <Id>42405</Id>
        <From>153810</From>
        <To>153812</To>
        <Type>0</Type>
        </Link>
        </Links>
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "StatusMessage": "Project doesn't exist",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get project task dependencies
GET/project/{ProjectId}/taskdependencies

Note :Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/taskdependencies
    • Example:
      • /project/1070/taskdependencies
URI Parameters
HideShow
ProjectId
int (required) Example: 1070

Add project task dependencies

This method serves to add project task dependencies.

POST https://api.itmplatform.com/company1/project/1070/taskdependencies
Requestswith body
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "FromTaskNo": null,
    "ToTaskNo": null,
    "From": 153809,
    "To": 153811,
    "Type": 0,
    "Lag": "0",
    "Cls": "",
    "LagUnit": "d",
    "Id": 0
  },
  {
    "FromTaskNo": null,
    "ToTaskNo": null,
    "From": 153810,
    "To": 153812,
    "Type": 0,
    "Lag": "0",
    "Cls": "",
    "LagUnit": "d",
    "Id": 0
  }
]
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "FromTaskNo": "",
    "ToTaskNo": "",
    "From": 153809,
    "To": 153811,
    "Type": 0,
    "Lag": "0",
    "Cls": "",
    "LagUnit": "d",
    "Id": 42402
  },
  {
    "FromTaskNo": "",
    "ToTaskNo": "",
    "From": 153810,
    "To": 153812,
    "Type": 0,
    "Lag": "0",
    "Cls": "",
    "LagUnit": "d",
    "Id": 42403
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "StatusMessage": "Project doesn't exist",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Add project task dependencies
POST/project/{ProjectId}/taskdependencies

Note :Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/taskdependencies
    • Example:
      • /project/1070/taskdependencies
URI Parameters
HideShow
ProjectId
int (required) Example: 1070

Delete project task dependencies

This method serves to delete project task dependencies.

DELETE https://api.itmplatform.com/company1/project/1070/taskdependencies
Requestswith body
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "FromTaskNo": null,
    "ToTaskNo": null,
    "From": 153809,
    "To": 153811,
    "Type": 0,
    "Lag": "0",
    "Cls": "",
    "LagUnit": "d",
    "Id": 0
  },
  {
    "FromTaskNo": null,
    "ToTaskNo": null,
    "From": 153810,
    "To": 153812,
    "Type": 0,
    "Lag": "0",
    "Cls": "",
    "LagUnit": "d",
    "Id": 0
  }
]
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    'success': true
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "StatusMessage": "Project doesn't exist",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Delete project task dependencies
DELETE/project/{ProjectId}/taskdependencies

Note :Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/taskdependencies
    • Example:
      • /project/1070/taskdependencies
URI Parameters
HideShow
ProjectId
int (required) Example: 1070

Add project task baseline

This method serves to add project task baseline.

POST https://api.itmplatform.com/company1/project/1070/baseline
Requestswith body
Headers
Content-Type: application/json
Token: {Token Value}
Body
"
    <ROOT>
    <TaskBaseLine>
    <intTaskId>153809</intTaskId>
    <dtsBaselineStartDate>8/5/2017 0:0:0</dtsBaselineStartDate>
    <dtsBaselineEndDate>9/5/2017 0:0:0</dtsBaselineEndDate>
    </TaskBaseLine>
    <TaskBaseLine>
    <intTaskId>153811</intTaskId>
    <dtsBaselineStartDate>8/5/2017 0:0:0</dtsBaselineStartDate>
    <dtsBaselineEndDate>9/5/2017 0:0:0</dtsBaselineEndDate>
    </TaskBaseLine>
    <TaskBaseLine>
    <intTaskId>153810</intTaskId>
    <dtsBaselineStartDate>8/5/2017 0:0:0</dtsBaselineStartDate>
    <dtsBaselineEndDate>9/5/2017 0:0:0</dtsBaselineEndDate>
    </TaskBaseLine>
    <TaskBaseLine>
    <intTaskId>153812</intTaskId>
    <dtsBaselineStartDate>8/5/2017 0:0:0</dtsBaselineStartDate>
    <dtsBaselineEndDate>9/5/2017 0:0:0</dtsBaselineEndDate>
    </TaskBaseLine>
    </ROOT>
"
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "IsSuccess": false
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "StatusMessage": "Project doesn't exist",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Add project task baseline
POST/project/{ProjectId}/baseline

Note :Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/baseline
    • Example:
      • /project/1070/baseline
URI Parameters
HideShow
ProjectId
int (required) Example: 1070

Add project progress from gantt

This method serves to add project progress from gantt.

POST https://api.itmplatform.com/company1/project/1070/ganttprogress/5
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "Result": false,
  "LastProgress": 0
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "StatusMessage": "Percentage completed should be between 0 to 100",
        "StatusCode": 400
}
{
        "StatusMessage": "Project does not exists",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Add project progress from gantt
POST/project/{ProjectId}/ganttprogress/{PercentDone}

Note :Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/ganttprogress/{PercentDone}
    • Example:
      • /project/1070/ganttprogress/5
URI Parameters
HideShow
ProjectId
int (required) Example: 1070
PercentDone
int (required) Example: 5

Favourites

Check favourite

This method serves to retrieve a favourite id. EntityId is id of any entity like projectId,TaskId,etc. This method will return favourite id if particular entity is mark as favourite otherwise it will return -1.

Entity Type is from following list:

Project = 1,
Task = 2,
Service = 3,
Activity = 4,
ProjectTeam = 5,
ProjectBudget = 6,
TaskList = 7,
ProjectPurchase = 8,
TaskTeam = 9,
TaskPurchase = 10,
ProjectList = 11,
MyProjects = 12,
MyServices = 13,
MyTaskAndActivities = 14,
ProjectRevenue = 15,
TaskRevenue = 16,
ProjectPurchaseDetail=17,
ProjectRevenueDetail=18,
ProjectRisk=19,
ProjectRiskDetail=20,
TaskFollowUp=21,
TaskFollowUpDetail=22,
TaskPurchaseDetail=23,
TaskRevenueDetail=24,
ProjectKanban = 25,
TaskEffort = 26

GET https://api.itmplatform.com/company1/favourite/20441/3
Responses200400401
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        4816
    }

}

{
    {
        -1
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}

Check Favourite
GET/favourite/{EntityId}/{EntityType}

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/favourite/{EntityId}/{EntityType}
    • Example:
      • /favourite/20441/3
URI Parameters
HideShow
EntityId
int (required) Example: 20441
EntityType
int (required) Example: 3

Add a favourite

This method serves to add a favourite detail.

POST https://api.itmplatform.com/company1/favourite
Requestswith body
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "AccountId":1143,
        "UserId":1745,
        "EntityId":331,
        "EntityType":1,
        "Order":-1,
        "URL":"UserPages/ProjectGeneral.aspx?pid=331",
        "ParentEntityType":0,
        "ParentEntityId":0
    }
}
Responses201400401
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "IsSuccess": "1",
        "FavouriteId" : 4880
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}

Add a favourite
POST/favourite

Note :Pass token as parameter in HTTP request header.

  • {AccountName}/favourite
    • Example:
      • /favourite

Delete a favourite

This method serves to delete favourite.

DELETE https://api.itmplatform.com/company1/favourite/4880
Responses201400401
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "IsSuccess": "1"
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}

Delete a favourite
DELETE/favourite/{FavouriteId}

Note :Pass token as parameter in HTTP request header.

  • {AccountName}/favourite/{FavouriteId}
    • Example:
      • /favourite/4880
URI Parameters
HideShow
FavouriteId
int (required) Example: 4880

Get Favourites

This method serves to retrieve list of favourite.

GET https://api.itmplatform.com/company1/favourites
Responses200400401
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "FavouriteId": 4876,
    "AccountId": 1142,
    "UserId": 1686,
    "EntityId": 367,
    "EntityType": 5,
    "Order": 1,
    "URL": "UserPages/ProjectTeam.aspx?pid=367",
    "EntityName": "New Prj",
    "ParentEntityType": 0,
    "ParentEntityId": 0,
    "ParentEntityName": ""
  },
  {
    "FavouriteId": 4879,
    "AccountId": 1142,
    "UserId": 1686,
    "EntityId": 22454,
    "EntityType": 9,
    "Order": 2,
    "URL": "UserPages/TaskTeam.aspx?pid=367",
    "EntityName": "Configuración DataLoader",
    "ParentEntityType": 1,
    "ParentEntityId": 367,
    "ParentEntityName": "New Prj"
  },
  {
    "FavouriteId": 4878,
    "AccountId": 1142,
    "UserId": 1686,
    "EntityId": 22454,
    "EntityType": 2,
    "Order": 4,
    "URL": "UserPages/TaskDetail.aspx?pid=367",
    "EntityName": "Configuración DataLoader",
    "ParentEntityType": 1,
    "ParentEntityId": 367,
    "ParentEntityName": "New Prj"
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}

Get Favourites
GET/favourites

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/favourites
    • Example:
      • /favourites

Reorder Favourite

This method serves to reorder favourite.

POST https://api.itmplatform.com/company1/favourite/4880/reorder/1
Responses201400401
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "IsSuccess": "1"
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}

Reorder Favourite
POST/favourite/{FavouriteId}/reorder/{NewIndex}

Note :Pass token as parameter in HTTP request header.

  • {AccountName}/favourite/{FavouriteId}/reorder/{NewIndex}
    • Example:
      • /favourite/4880/reorder/1
URI Parameters
HideShow
FavouriteId
int (required) Example: 4880
NewIndex
int (required) Example: 1

Organization

Get a account detail

This method serves to retrieve a account detail.

GET https://api.itmplatform.com/company1/accountdetail/1686
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "CompanyAdminUserId": 1686,
        "CompanyName": "Company name",
        "StreetAddress1": "123451",
        "StreetAddress2": "456781",
        "City": "city1",
        "State": "state1",
        "Zipcode": "1234561",
        "CountryId": 20,
        "Phone": "12345671",
        "Corporation": "test1",
        "Website": "test.blogspot.com",
        "ApplicationName": "BHL",
        "LanguageId": 1,
        "Tax": "10.00",
        "PersonalEmailAddress": "me@globalcorp360.co.in",
        "Linkdin": "test1",
        "Facebook": "test2",
        "StandardPaymentClauses": 1,
        "MaxFileSizeUpload": 251,
        "MinPassLength": 1,
        "FiscalYearStartDate": 2,
        "FiscalYearEndDate": 12,
        "FiscalYearName": 2017,
        "AllowTimeEntryOutOfTaskDate": true,
        "WeekDaysWorkingHour": 0,
        "WeekDaysWorkingMin": 0,
        "SaturDayWorkingHour": 0,
        "SaturDayWorkingMin": 0,
        "SunDayWorkingHour": 0,
        "SunDayWorkingMin": 0,
        "DateFormatTypeId": 2,
        "Currency": "US Dollar ($)",
        "FirstDayOfWeekId": 1,
        "NumberFormatId": 2
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get a account detail
GET/accountdetail/{CompanyAdminUserId}

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/accountdetail/{CompanyAdminUserId}
    • Example:
      • /accountdetail/1686
URI Parameters
HideShow
CompanyAdminUserId
int (required) Example: 1686

Update a account detail

This method serves to update account detail.

PUT https://api.itmplatform.com/company1/accountdetail
Requestswith body
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "CompanyAdminUserId":1686,
        "CompanyName":"Global corp 360",
        "StreetAddress1":"123",
        "StreetAddress2":"456",
        "City":"",
        "State":"",
        "Zipcode":"1234",
        "CountryId":20,
        "Phone":"1234567",
        "Corporation":"test",
        "Website":"jucli@globalcorp360.com",
        "ApplicationName":"BHL",
        "LanguageId":1,
        "Tax":"0.00",
        "PersonalEmailAddress":"me@globalcorp360.co.in",
        "Linkdin":"",
        "Facebook":"",
        "StandardPaymentClauses":0,
        "MaxFileSizeUpload":250,
        "MinPassLength":3,
        "FiscalYearStartDate":1,
        "FiscalYearEndDate":1,
        "FiscalYearName":2016,
        "AllowTimeEntryOutOfTaskDate":true,
        "WeekDaysWorkingHour":0,
        "WeekDaysWorkingMin":0,
        "SaturDayWorkingHour":0,
        "SaturDayWorkingMin":0,
        "SunDayWorkingHour":0,
        "SunDayWorkingMin":0,
        "DateFormatTypeId":1,
        "Currency":"USD",
        "FirstDayOfWeekId":1,
        "NumberFormatId":1
    }
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "AccountId": 1142,
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "AccountId": 0,
        "StatusMessage": "Account doesn't exist",
        "StatusCode": 400
}
{
        "AccountId": 0,
        "StatusMessage": "Please enter company name",
        "StatusCode": 400
}
{
        "AccountId": 0,
        "StatusMessage": "Please enter URL name for company",
        "StatusCode": 400
}
{
        "AccountId": 0,
        "StatusMessage": "Max file size can not be negative",
        "StatusCode": 400
}
{
        "AccountId": 0,
        "StatusMessage": "Please enter min password between 1 to 255",
        "StatusCode": 400
}
{
        "AccountId": 0,
        "StatusMessage": "Standard payment clauses can not be negative",
        "StatusCode": 400
}
{
        "AccountId": 0,
        "StatusMessage": "Tax % can not be greater than 100",
        "StatusCode": 400
}
{
        "AccountId": 0,
        "StatusMessage": "Please enter correct  tax %",
        "StatusCode": 400
}
{
        "AccountId": 0,
        "StatusMessage": "Please enter valid language id",
        "StatusCode": 400
}
{
        "AccountId": 0,
        "StatusMessage": "Please enter valid country id",
        "StatusCode": 400
}
{
        "AccountId": 0,
        "StatusMessage": "Please enter valid application name",
        "StatusCode": 400
}
{
        "AccountId": 0,
        "StatusMessage": "Date format type id should be 1 or 2",
        "StatusCode": 400
}
{
        "AccountId": 0,
        "StatusMessage": "First day of week id should be between 0(sun) to 6 (sat)",
        "StatusCode": 400
}
{
        "AccountId": 0,
        "StatusMessage": "Number format type id should be 1 or 2",
        "StatusCode": 400
}
{
        "AccountId": 0,
        "StatusMessage": "Please enter valid company email address",
        "StatusCode": 400
}
{
        "AccountId": 0,
        "StatusMessage": "Please enter valid website",
        "StatusCode": 400
}
{
        "AccountId": 0,
        "StatusMessage": "URL already exists",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Update a account detail
PUT/accountdetail

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/accountdetail
    • Example:
      • /accountdetail

Communication

Get Account Language

This method serves to retrieve account lanuages.

GET https://api.itmplatform.com/company1/accountlanguages
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "LanguageId": 1,
    "LanuageName": "English",
    "LanguageDefaultName": "English"
  },
  {
    "LanguageId": 2,
    "LanuageName": "Spanish",
    "LanguageDefaultName": "Español"
  },
  {
    "LanguageId": 3,
    "LanuageName": "Portuguese",
    "LanguageDefaultName": "Português"
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get Account Language
GET/accountlanguages

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/accountlanguages
    • Example:
      • /accountlanguages

Project Purchases

Get project Purchases

This method serves to retrieve project purchases.

GET https://api.itmplatform.com/company1/project/ProjectId/purchases
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "PurchaseId": 2338,
    "AccountId": 1142,
    "ProjectId": 331,
    "PurchaseName": "ProjectPurchase",
    "Description": "",
    "PurchaseStatus": {
      "PurchaseStatusName": "Not Approved",
      "PurchaseStatusId": 7,
      "PurchaseStatusIcon": "https://app.itmplatform.com/UploadData/Iconlibrary/flag--exclamation.png",
      "StatusDate": "2017-03-21T00:00:00Z"
    },
    "BudgetAccount": {
      "BudgetAccountName": " Account 1",
      "BudgetAccountId": 461
    },
    "PurchaseType": {
      "PurchaseTypeName": "Others",
      "PurchaseTypeId": 3273,
      "PurchaseTypeIcon": "https://app.itmplatform.com/UploadData/Iconlibrary/question.png"
    },
    "DueDate": "2009-10-01T00:00:00Z",
    "Provider": {
      "ProviderId": 97,
      "ProviderName": "Google"
    },
    "InvoiceNo": "123",
    "DependingOnTask": {
      "DependingOnTaskName": "2.0  Capacitacion Manejo",
      "DependingOnTaskId": 20441
    },
    "ActualAmountDetail": {
      "ActualAmount": 0,
      "ActualAmountCurrencyId": 1113,
      "ActualAmountExchangeRate": 1,
      "ActualAmountChangeApplied": "2017-07-05T10:01:42.950Z",
      "ActualAmountBase": 0,
      "ActualAmountCurrencySymbol": "$",
      "ActualAmountCurrencyAlphabeticCode": "USD"
    },
    "ProjectedAmountDetail": {
      "ProjectedAmount": 110,
      "ProjectedAmountCurrencyId": 1113,
      "ProjectedAmountExchangeRate": 1,
      "ProjectedAmountChangeApplied": "2017-07-05T10:01:42.950Z",
      "ProjectedAmountBase": 110,
      "ProjectedAmountCurrencySymbol": "$",
      "ProjectedAmountCurrencyAlphabeticCode": "USD"
    },
    "IsDocumentAttached": false
  },
  {
    "PurchaseId": 2384,
    "AccountId": 1142,
    "ProjectId": 331,
    "PurchaseName": "#1 Purchase",
    "Description": "",
    "PurchaseStatus": {
      "PurchaseStatusName": "Pending",
      "PurchaseStatusId": 1,
      "PurchaseStatusIcon": "https://app.itmplatform.com/UploadData/Iconlibrary/flag-yellow.png",
      "StatusDate": "2017-03-09T00:00:00Z"
    },
    "BudgetAccount": {
      "BudgetAccountName": "new account",
      "BudgetAccountId": 464
    },
    "PurchaseType": null,
    "DueDate": "2017-04-14T00:00:00Z",
    "Provider": null,
    "InvoiceNo": "",
    "DependingOnTask": null,
    "ActualAmountDetail": {
      "ActualAmount": 0,
      "ActualAmountCurrencyId": 1113,
      "ActualAmountExchangeRate": 1,
      "ActualAmountChangeApplied": "2017-06-28T17:06:07.097Z",
      "ActualAmountBase": 0,
      "ActualAmountCurrencySymbol": "$",
      "ActualAmountCurrencyAlphabeticCode": "USD"
    },
    "ProjectedAmountDetail": {
      "ProjectedAmount": 0,
      "ProjectedAmountCurrencyId": 1113,
      "ProjectedAmountExchangeRate": 1,
      "ProjectedAmountChangeApplied": "2017-06-28T17:06:07.097Z",
      "ProjectedAmountBase": 0,
      "ProjectedAmountCurrencySymbol": "$",
      "ProjectedAmountCurrencyAlphabeticCode": "USD"
    },
    "IsDocumentAttached": false
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get project purchases
GET/project/{ProjectId}/purchases

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/purchases
    • Example:
      • /project/331/purchases
      • For fixed urls: {AccountName}/project/331/purchases
      • For urls with Filters in them:
        • {AccountName}/project/331/purchases/?PurchaseId=2338
        • {AccountName}/project/331/purchases/?PurchaseId=2338&PurchaseName=Test

Filter Operators :

  • gt - “greater than” - returns items with the specified attribute that is greater than the defined value

  • lt - “less than” - returns items with the specified attribute that is less than the defined value

  • eql - “equal to” - returns items with the specified attribute that is equal to the defined value

Conjunction operators :

  • AND - returns items that meet all filter operators

  • OR - returns items that meet at least one filter operator

Examples of Filter URL :

URI Parameters
HideShow
PurchaseId
string (required) Example: 2338
PurchaseName
string (optional) Example: test
Description
string (optional) 
PurchaseStatus.PurchaseStatusName
string (optional) 
PurchaseStatus.PurchaseStatusId
string (optional) 
PurchaseStatus.StatusDate
string (optional) 
BudgetAccount.BudgetAccountName
string (optional) 
BudgetAccount.BudgetAccountId
string (optional) 
PurchaseType.PurchaseTypeName
string (optional) 
PurchaseType.PurchaseTypeId
string (optional) 
DueDate
string (optional) 
Provider.ProviderId
string (optional) 
Provider.ProviderName
string (optional) 
InvoiceNo
string (optional) 
ProjectId
string (optional) 
ActualAmountDetail.ActualAmount
string (optional) 
ActualAmountDetail.ActualAmountCurrencyId
string (optional) 
ActualAmountDetail.ActualAmountExchangeRate
string (optional) 
ActualAmountDetail.ActualAmountChangeApplied
string (optional) 
ActualAmountDetail.ActualAmountBase
string (optional) 
ActualAmountDetail.ActualAmountCurrencySymbol
string (optional) 
ActualAmountDetail.ActualAmountCurrencyAlphabeticCode
string (optional) 
ProjectedAmountDetail.ProjectedAmount
string (optional) 
ProjectedAmountDetail.ProjectedAmountCurrencyId
string (optional) 
ProjectedAmountDetail.ProjectedAmountExchangeRate
string (optional) 
ProjectedAmountDetail.ProjectedAmountChangeApplied
string (optional) 
ProjectedAmountDetail.ProjectedAmountBase
string (optional) 
ProjectedAmountDetail.ProjectedAmountCurrencyAlphabeticCode
string (optional) 
DependingOnTask.DependingOnTaskName
string (optional) 
DependingOnTask.DependingOnTaskId
string (optional) 

Add project purchase

This method serves to add single or recurring project purchase. Please note that you should use different syntaxes for single and recurring purchases.

POST https://api.itmplatform.com/company1/project/331/purchase
Requestswith body
Headers
Content-Type: application/json
Token: {Token Value}
Body
"For single purchase"  
{    
    {
        "PurchaseName":"Test",
        "Description":"123",
        "PurchaseStatusId":1,
        "StatusDate": "2017-07-05T00:00:00Z",
        "PurchaseTypeId":0,
        "DueDate" :"2017-07-05T00:00:00Z",
        "ProviderId":0,
        "InvoiceNo":"",
        "BudgetAccountId":235,
        "ActualAmount":100.00,
        "ActualAmountCurrencyId":1113,
        "ProjectedAmount":100.00,
        "ProjectedAmountCurrencyId":1113,
        "TaskDateGap":0,
        "IsDependUponTaskStartDate":false,
        "DependingOnTaskId":0
    }
}
  

  
"For recurring purchases" 
{    
    {
        "PurchaseName":"Test",
        "Description":"description",
        "PurchaseStatusId":1,
        "StatusDate": "2017-07-05T00:00:00Z",
        "PurchaseTypeId":0,
        "ProviderId":0,
        "InvoiceNo":"",
        "BudgetAccountId":235,
        "ActualAmount":100.00,
        "ActualAmountCurrencyId":1113,
        "ProjectedAmount":100.00,
        "ProjectedAmountCurrencyId":1113,
        "TaskDateGap":0,
        "IsDependUponTaskStartDate":false,
        "DependingOnTaskId":0,
        "IsRecurrence":true,
        "DueDateAfter":1,
        "FirstPurchaseDate":"2017-07-05T00:00:00Z",
        "RepeatsOn":2,
        "RepeatsOnValue":1,
        "NumberOfRecurrences":2        
    }
}
Responses201400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "PurchaseId":1234,
        "StatusMessage": "Purchase inserted successfully",
        "StatusCode": 201
    }
    {
        "PurchaseId": [
        "2935",
        "2936"
        ],
        "StatusMessage": "Purchase(s) inserted successfully",
        "StatusCode": 201
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "PurchaseId":null,
        "StatusMessage": "Project doesn't exist",
        "StatusCode": 400
}
{
        "PurchaseId":null,
        "StatusMessage": "Please enter purchase name",
        "StatusCode": 400
}
{
        "PurchaseId":null,
        "StatusMessage": "Please enter purchase status date",
        "StatusCode": 400
}
{
        "PurchaseId":null,
        "StatusMessage": "Please enter budget account id greater than 0",
        "StatusCode": 400
}
{
        "PurchaseId":null,
        "StatusMessage": "Please enter purchase status id greater than 0",
        "StatusCode": 400
}
{
        "PurchaseId":null,
        "StatusMessage": "Please enter valid budget account id",
        "StatusCode": 400
}
{
        "PurchaseId":null,
        "StatusMessage": "Please enter valid purchase status id",
        "StatusCode": 400
}
{
        "PurchaseId":null,
        "StatusMessage": "Please enter valid provider id",
        "StatusCode": 400
}
{
        "PurchaseId":null,
        "StatusMessage": "Please enter valid purchase type id",
        "StatusCode": 400
}
{
        "PurchaseId":0,
        "StatusMessage": "Please enter valid actual amount",
        "StatusCode": 400
}
{
        "PurchaseId":0,
        "StatusMessage": "Please enter valid projected amount",
        "StatusCode": 400
}
{
        "PurchaseId":null,
        "StatusMessage": "Please enter valid projected amount currency id",
        "StatusCode": 400
}
{
        "PurchaseId":null,
        "StatusMessage": "Please enter valid actual amount currency id",
        "StatusCode": 400
}
{
        "PurchaseId":null,
        "StatusMessage": "Please enter valid depending on task id",
        "StatusCode": 400
}  
"For single purchase"
{
        "PurchaseId":null,
        "StatusMessage": "Please enter valid purchase status date",
        "StatusCode": 400
}
{
        "PurchaseId":0,
        "StatusMessage": "Please enter valid due date",
        "StatusCode": 400 
}
"For recurring purchases"
{
        "PurchaseId":null,
        "StatusMessage": "Please enter First purchase date",
        "StatusCode": 400
} 
{
        "PurchaseId":null,
        "StatusMessage": "Please enter Repeat type",
        "StatusCode": 400
}
{
        "PurchaseId":null,
        "StatusMessage": "Please enter Number of recurrences",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Add project purchase
POST/project/{ProjectId}/purchase

Note :Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/purchase
    • Example:
      • /project/331/purchase
URI Parameters
HideShow
ProjectId
int (required) Example: 331

Update a project purchase

This method serves to update a project purchase.

PUT https://api.itmplatform.com/company1/project/331/purchase/345
Requestswith body
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "PurchaseName":"Test update",
        "Description":"description",
        "PurchaseStatusId":1,
        "StatusDate": "2017-07-05T00:00:00Z",
        "PurchaseTypeId":0,
        "ProviderId":0,
        "InvoiceNo":"",
        "BudgetAccountId":417,
        "ActualAmount":100.00,
        "ActualAmountCurrencyId":1113,
        "ProjectedAmount":100.00,
        "ProjectedAmountCurrencyId":1113,
        "TaskDateGap":0,
        "IsDependUponTaskStartDate":false,
        "DependingOnTaskId":0
    }
}
Responses201400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "PurchaseId":345,
        "StatusMessage": "Purchase updated successfully",
        "StatusCode": 201
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "PurchaseId":null,
        "StatusMessage": "Project doesn't exist",
        "StatusCode": 400
}
{
        "PurchaseId":null,
        "StatusMessage": "Please enter valid purchase id",
        "StatusCode": 400
}
{
        "PurchaseId":null,
        "StatusMessage": "Please enter purchase name",
        "StatusCode": 400
}
{
        "PurchaseId":null,
        "StatusMessage": "Please enter purchase status date",
        "StatusCode": 400
}
{
        "PurchaseId":null,
        "StatusMessage": "Please enter budget account id greater than 0",
        "StatusCode": 400
}
{
        "PurchaseId":0,
        "StatusMessage": "Please enter purchase status id greater than 0",
        "StatusCode": 400
}
{
        "PurchaseId":null,
        "StatusMessage": "Please enter valid budget account id",
        "StatusCode": 400
}
{
        "PurchaseId":null,
        "StatusMessage": "Please enter valid purchase status id",
        "StatusCode": 400
}
{
        "PurchaseId":null,
        "StatusMessage": "Please enter valid provider id",
        "StatusCode": 400
}
{
        "PurchaseId":null,
        "StatusMessage": "Please enter valid purchase type id",
        "StatusCode": 400
}
{
        "PurchaseId":null,
        "StatusMessage": "Please enter valid purchase status date",
        "StatusCode": 400
}
{
        "PurchaseId":null,
        "StatusMessage": "Please enter valid due date",
        "StatusCode": 400
}
{
        "PurchaseId":null,
        "StatusMessage": "Please enter valid actual amount",
        "StatusCode": 400
}
{
        "PurchaseId":null,
        "StatusMessage": "Please enter valid projected amount",
        "StatusCode": 400
}
{
        "PurchaseId":null,
        "StatusMessage": "Please enter valid projected amount currency id",
        "StatusCode": 400
}
{
        "PurchaseId":null,
        "StatusMessage": "Please enter valid actual amount currency id",
        "StatusCode": 400
}
{
        "PurchaseId":null,
        "StatusMessage": "Please enter valid depending on task id",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Update a project purchase
PUT/project/{ProjectId}/purchase/{PurchaseId}

Note :Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/purchase/{PurchaseId}
    • Example:
      • /project/331/purchase/345
URI Parameters
HideShow
ProjectId
int (required) Example: 331
PurchaseId
int (required) Example: 345

Get a project purchase

This method serves to retrieve a project purchase detail.

GET https://api.itmplatform.com/company1/project/331/purchase/2338
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "PurchaseId": 2338,
        "PurchaseName": "test prj purchase update ",
        "Description": "",
        "PurchaseStatusName": "Not Approved",
        "PurchaseStatusId": 7,
        "StatusDate": "2017-03-21T00:00:00Z",
        "BudgetAccountName": "New Account 123",
        "PurchaseTypeName": "Others",
        "PurchaseTypeId": 3273,
        "DueDate": "2009-10-01T00:00:00Z",
        "ProviderName": "Google",
        "ProviderId": 97,
        "InvoiceNo": "123",
        "AccountId": 1142,
        "ProjectId": 331,
        "BudgetAccountId": 461,
        "ActualAmount": 0,
        "ActualAmountCurrencyId": 1113,
        "ActualAmountExchangeRate": 1,
        "ActualAmountChangeApplied": "2017-07-05T10:01:42.950Z",
        "ProjectedAmount": 110,
        "ProjectedAmountCurrencyId": 1113,
        "ProjectedAmountExchangeRate": 1,
        "ProjectedAmountChangeApplied": "2017-07-05T10:01:42.950Z",
        "PurchaseStatusIcon": "https://app.itmplatform.com/UploadData/Iconlibrary/flag--exclamation.png",
        "PurchaseTypeIcon": "https://app.itmplatform.com/UploadData/Iconlibrary/question.png",
        "DependingOnTaskName": "2.0  Capacitacion Manejo",
        "IsDocumentAttached": false,
        "IsConsiderActualValue": false,
        "DependingOnTaskId": 20441,
        "IsDependUponTaskStartDate": false,
        "TaskDateGap": 0,
        "TaskPath": "summary task\\2.0  Capacitacion Manejo"
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get a project purchase
GET/project/{ProjectId}/purchase/{PurchaseId}

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/purchase/{PurchaseId}
    • Example:
      • /project/331/purchase/2338
URI Parameters
HideShow
ProjectId
int (required) Example: 331
PurchaseId
int (required) Example: 2338

Delete a project purchase

This method serves to delete a project purchase.

DELETE https://api.itmplatform.com/company1/project/331/purchase/2338
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "PurchaseId":0,
        "StatusMessage": "Purchase deleted successfully",
        "StatusCode": 200
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "PurchaseId":null,
        "StatusMessage": "Project doesn't exist",
        "StatusCode": 400
}
{
        "PurchaseId":null,
        "StatusMessage": "Purchase ids doesn't exist",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Delete a project purchase
DELETE/project/{ProjectId}/purchase/{PurchaseId}

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/purchase/{PurchaseId}
    • Example:
      • /project/331/purchase/233
URI Parameters
HideShow
ProjectId
int (required) Example: 331
PurchaseId
int (required) Example: 2338

Get project purchases budgets

This method serves to retrieve list of project purchases budgets.

GET https://api.itmplatform.com/company1/project/331/purchases/budgets
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "ProjectId": 331,
    "BudgetAccount": {
      "BudgetAccountName": "My Purchase Budget",
      "BudgetAccountId": 235,
      "BudgetAccountCurrencyId": 1113,
      "BudgetAccountExcahngeRate": 1,
      "BudgetAccountChangeApplied": "2017-04-17T10:16:14.293Z"
    },
    "Description": "Description",
    "Estimated": 700,
    "ProjectedAmount": 4036,
    "ActualAmount": 17425,
    "LastPECValues": 0,
    "CurrencyDetail": {
      "CurrencySymbol": "$",
      "CurrencyAlphabeticCode": "USD",
      "CurrencySymbolPEC": "$",
      "CurrencyAlphabeticCodePEC": "USD"
    },
    "Percentage": 2489.2857,
    "PercentagePEC": 0,
    "Provider": null
  },
  {
    "ProjectId": 331,
    "BudgetAccount": {
      "BudgetAccountName": "New Account 1",
      "BudgetAccountId": 461,
      "BudgetAccountCurrencyId": 1119,
      "BudgetAccountExcahngeRate": 15,
      "BudgetAccountChangeApplied": "2017-03-09T16:13:40.537Z"
    },
    "Description": "test",
    "Estimated": 5175,
    "ProjectedAmount": 454,
    "ActualAmount": 100,
    "LastPECValues": 0,
    "CurrencyDetail": {
      "CurrencySymbol": "€",
      "CurrencyAlphabeticCode": "EUR",
      "CurrencySymbolPEC": "€",
      "CurrencyAlphabeticCodePEC": "EUR"
    },
    "Percentage": 28.9855,
    "PercentagePEC": 0,
    "Provider": null
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get project purchases budgets
GET/project/{ProjectId}/purchases/budgets

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/purchases/budgets
    • Example:
      • /project/331/purchases/budgets
URI Parameters
HideShow
ProjectId
int (required) Example: 331

Delete a project purchases budget

This method serves to delete a a project purchases budget.

DELETE https://api.itmplatform.com/company1/project/331/purchases/budget/431
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "BudgetAccountId": 431,
        "StatusMessage": "Record deleted successfully",
        "StatusCode": 200
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "BudgetAccountId": 0,
        "StatusMessage": "Cannot delete reference, already in use",
        "StatusCode": 400
}
{
        "BudgetAccountId": 0,
        "StatusMessage": "Budget account detail doesn't exist",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Delete a project purchases budget
DELETE/project/{ProjectId}/purchases/budget/{BudgetAccountId}

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/purchases/budget/{BudgetAccountId}
    • Example:
      • /project/331/purchases/budget/431
URI Parameters
HideShow
ProjectId
int (required) Example: 331
BudgetAccountId
int (required) Example: 431

Get a project purchases budget

This method serves to retrieve a project purchases budget detail.

GET https://api.itmplatform.com/company1/project/331/purchases/budget/235
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "ProjectId": 331,
        "BudgetAccountId": 235,
        "BudgetAccountName": "My Purchase Budget",
        "BudgetAccountCurrencyId": 1113,
        "BudgetAccountExcahngeRate": 1,
        "BudgetAccountChangeApplied": "2017-04-17T10:16:14.293Z",
        "Description": "Description",
        "Estimated": 700,
        "ProjectedAmount": 0,
        "ActualAmount": 0,
        "LastPECValues": 0,
        "ProviderId": 0,
        "ProviderName": ""
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get a project purchases budget
GET/project/{ProjectId}/purchases/budget/{BudgetAccountId}

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/purchases/budget/{BudgetAccountId}
    • Example:
      • /project/331/purchases/budget/235
URI Parameters
HideShow
ProjectId
int (required) Example: 331
BudgetAccountId
int (required) Example: 235

Add a project purchases budget

This method serves to add a project purchases budget.

POST https://api.itmplatform.com/company1/project/331/purchases/budget
Requestswith body
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "BudgetAccountName":"New Account",
        "Description":"",
        "Estimated":300,
        "BudgetAccountCurrencyId":1113
    }
}
Responses201400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "BudgetAccountId":321,
        "StatusMessage": "Project purchase budget account inserted successfully",
        "StatusCode": 201
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "BudgetAccountId": 0,
        "StatusMessage": "Project doesn't exist",
        "StatusCode": 400
}
{
        "BudgetAccountId": 0,
        "StatusMessage": "Please enter budget account name",
        "StatusCode": 400
}
{
        "BudgetAccountId": 0,
        "StatusMessage": "Please enter valid estimated amount",
        "StatusCode": 400
}
{
        "BudgetAccountId": 0,
        "StatusMessage": "Please enter valid currency id",
        "StatusCode": 400
}
{
        "BudgetAccountId": 0,
        "StatusMessage": "Record already exists",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Add a project purchases budget
POST/project/{ProjectId}/purchases/budget

Note :Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/purchases/budget
    • Example:
      • /project/331/purchases/budget
URI Parameters
HideShow
ProjectId
int (required) Example: 331

Update a project purchases budget

This method serves to update a project purchases budget.

PUT https://api.itmplatform.com/company1/project/331/purchases/budget/321
Requestswith body
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "BudgetAccountName":"New Account update",
        "Description":"",
        "Estimated":300,
        "BudgetAccountCurrencyId":1113
}
Responses201400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "BudgetAccountId":321,
        "StatusMessage": "Project purchase budget account updated successfully",
        "StatusCode": 201
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "BudgetAccountId": 0,
        "StatusMessage": "Budget account detail doesn't exist",
        "StatusCode": 400
}
{
        "BudgetAccountId": 0,
        "StatusMessage": "Please enter budget account name",
        "StatusCode": 400
}
{
        "BudgetAccountId": 0,
        "StatusMessage": "Please enter valid estimated amount",
        "StatusCode": 400
}
{
        "BudgetAccountId": 0,
        "StatusMessage": "Please enter valid currency id",
        "StatusCode": 400
}
{
        "BudgetAccountId": 0,
        "StatusMessage": "Record already exists",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Update a project purchases budget
PUT/project/{ProjectId}/purchases/budget/{BudgetAccountId}

Note :Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/purchases/budget/{BudgetAccountId}
    • Example:
      • /project/331/purchases/budget/321
URI Parameters
HideShow
ProjectId
int (required) Example: 331
BudgetAccountId
int (required) Example: 321

Project Revenues

Get project revenues

This method serves to retrieve a list of all revenues of a particular project, including their details.

GET https://api.itmplatform.com/company1/project/8070/revenues
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "ProjectId": 331,
    "RevenueId": 2644,
    "RevenueName": "Revenue 1",
    "Description": "test",
    "RevenueStatus": {
      "RevenueStatusName": "Available",
      "RevenueStatusId": 22,
      "RevenueStatusIcon": "https://app.itmplatform.com/UploadData/Iconlibrary/plus.png",
      "StatusDate": "2017-05-10T00:00:00Z"
    },
    "ActualAmountDetail": {
      "ActualAmount": 0,
      "ActualAmountCurrencyId": 1113,
      "ActualAmountExchangeRate": 1,
      "ActualAmountChangeApplied": "2017-07-04T18:46:37.277Z",
      "ActualAmountCurrencySymbol": "$",
      "ActualAmountCurrencyAlphabeticCode": "USD"
    },
    "ProjectedAmountDetail": {
      "ProjectedAmount": 0,
      "ProjectedAmountCurrencyId": 1113,
      "ProjectedAmountExchangeRate": 1,
      "ProjectedAmountChangeApplied": "2017-07-04T18:46:37.277Z",
      "ProjectedAmountCurrencySymbol": "$",
      "ProjectedAmountCurrencyAlphabeticCode": "USD"
    },
    "DueDate": "2017-05-10T00:00:00Z",
    "DependingOnTask": {
      "DependingOnTaskName": "2.0  Capacitacion Manejo",
      "DependingOnTaskId": 20441
    },
    "TaskDateGap": 0,
    "IsDependOnTask": true,
    "IsStartDate": false,
    "RevenueNo": "",
    "IsDocumentAttached": false
  },
  {
    "ProjectId": 331,
    "RevenueId": 2660,
    "RevenueName": "Revenue 2",
    "Description": "",
    "RevenueStatus": {
      "RevenueStatusName": "Available",
      "RevenueStatusId": 22,
      "RevenueStatusIcon": "https://app.itmplatform.com/UploadData/Iconlibrary/plus.png",
      "StatusDate": "2017-06-16T00:00:00Z"
    },
    "ActualAmountDetail": {
      "ActualAmount": 0,
      "ActualAmountCurrencyId": 1113,
      "ActualAmountExchangeRate": 1,
      "ActualAmountChangeApplied": "2017-06-16T12:51:06.043Z",
      "ActualAmountCurrencySymbol": "$",
      "ActualAmountCurrencyAlphabeticCode": "USD"
    },
    "ProjectedAmountDetail": {
      "ProjectedAmount": 0,
      "ProjectedAmountCurrencyId": 1113,
      "ProjectedAmountExchangeRate": 1,
      "ProjectedAmountChangeApplied": "2017-06-16T12:51:06.043Z",
      "ProjectedAmountCurrencySymbol": "$",
      "ProjectedAmountCurrencyAlphabeticCode": "USD"
    },
    "DueDate": "2009-10-01T00:00:00Z",
    "DependingOnTask": {
      "DependingOnTaskName": "2.0  Capacitacion Manejo",
      "DependingOnTaskId": 20441
    },
    "TaskDateGap": 0,
    "IsDependOnTask": true,
    "IsStartDate": true,
    "RevenueNo": "",
    "IsDocumentAttached": false
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get project revenues
GET/project/{ProjectId}/revenues

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/revenues
    • Example:
      • /project/331/revenues
      • For fixed urls: {AccountName}/project/331/revenues
      • For urls with Filters in them:
        • {AccountName}/project/331/revenues/?RevenueId=2576
        • {AccountName}/project/331/revenues/?RevenueId=2576&RevenueName=Test 1

Filter Operators :

  • gt - “greater than” - returns items with the specified attribute that is greater than the defined value

  • lt - “less than” - returns items with the specified attribute that is less than the defined value

  • eql - “equal to” - returns items with the specified attribute that is equal to the defined value

Conjunction operators :

  • AND - returns items that meet all filter operators

  • OR - returns items that meet at least one filter operator

Examples of Filter URL :

URI Parameters
HideShow
ProjectId
int (required) Example: 8070
RevenueId
string (optional) Example: 2576
RevenueName
string (optional) 
RevenueStatus.RevenueStatusName
string (optional) 
RevenueStatus.RevenueStatusId
string (optional) 
RevenueStatus.StatusDate
string (optional) 
ProjectedAmountDetail.ProjectedAmount
string (optional) 
ProjectedAmountDetail.ProjectedAmountCurrencyId
string (optional) 
ProjectedAmountDetail.ProjectedAmountExchangeRate
string (optional) 
ProjectedAmountDetail.ProjectedAmountChangeApplied
string (optional) 
ProjectedAmountDetail.ProjectedAmountCurrencySymbol
string (optional) 
ProjectedAmountDetail.ProjectedAmountCurrencyAlphabeticCode
string (optional) 
ActualAmountDetail.ActualAmount
string (optional) 
ActualAmountDetail.ActualAmountCurrencyId
string (optional) 
ActualAmountDetail.ActualAmountExchangeRate
string (optional) 
ActualAmountDetail.ActualAmountChangeApplied
string (optional) 
ActualAmountDetail.ActualAmountCurrencySymbol
string (optional) 
ActualAmountDetail.ActualAmountCurrencyAlphabeticCode
string (optional) 
Description
string (optional) 
DueDate
string (optional) 
DependingOnTask.DependingOnTaskId
string (optional) 
DependingOnTask.DependingOnTaskName
string (optional) 
TaskDateGap
string (optional) 
IsDependOnTask
string (optional) 
IsStartDate
string (optional) 
RevenueNo
string (optional) 
IsDocumentAttached
string (optional) 

Delete a project revenue

This method serves to delete a project revenue.

DELETE https://api.itmplatform.com/company1/project/331/revenue/2338
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "RevenueId": 0,
        "StatusMessage": "Revenue deleted successfully",
        "StatusCode": 200
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "RevenueId": 0,
        "StatusMessage": "Project doesn't exist",
        "StatusCode": 400
}
{
        "RevenueId": 0,
        "StatusMessage": "Revenue id/s doesn't exist",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Delete a project revenue
DELETE/project/{ProjectId}/revenue/{RevenueId}

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/revenue/{RevenueId}
    • Example:
      • /project/331/revenue/233
URI Parameters
HideShow
ProjectId
int (required) Example: 331
RevenueId
int (required) Example: 2338

Get a project revenue

This method serves to retrieve a revenue of a particular project.

GET https://api.itmplatform.com/company1/project/331/revenue/2578
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "ProjectId": 331,
        "RevenueId": 2578,
        "RevenueName": "new rev 3",
        "RevenueStatusName": "Available",
        "RevenueStatusId": 22,
        "ProjectedAmount": 0,
        "ActualAmount": 0,
        "Description": "",
        "StatusDate": "2017-06-23T00:00:00Z",
        "DueDate": "2017-06-23T00:00:00Z",
        "DependingOnTaskName": "",
        "DependingOnTaskId": 0,
        "TaskDateGap": 0,
        "IsDependOnTask": false,
        "IsStartDate": false,
        "RevenueNo": "",
        "ProjectedAmountCurrencyId": 1113,
        "ProjectedAmountExchangeRate": 1,
        "ProjectedAmountChangeApplied": "2017-08-18T11:57:25.677Z",
        "ActualAmountCurrencyId": 1113,
        "ActualAmountExchangeRate": 1,
        "ActualAmountChangeApplied": "2017-08-18T11:57:25.677Z",
        "RevenueStatusIcon": "http://localhost/ITM.Web/UploadData/Iconlibrary/plus.png",
        "IsConsiderActualValue": false,
        "IsDependUponTaskStartDate": false,
        "TaskPath": null
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get a project revenue
GET/project/{ProjectId}/revenue/{RevenueId}

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/revenue/{RevenueId}
    • Example:
      • /project/331/revenue/2578
URI Parameters
HideShow
ProjectId
int (required) Example: 331
RevenueId
int (required) Example: 2578

Add project revenue

This method serves to add a project revenue.

POST https://api.itmplatform.com/company1/project/331/revenue
Requestswith body
Headers
Content-Type: application/json
Token: {Token Value}
Body
"For single revenue"  
{    
    {
        "RevenueName":"Test 1",
        "RevenueStatusId":22,
        "ProjectedAmount":100,
        "ActualAmount":0,
        "Description":"",
        "StatusDate":"2017-03-14T00:00:00Z",
        "DueDate":"2017-03-14T00:00:00Z",
        "TaskDateGap":0,
        "IsDependOnTask":false,
        "IsStartDate":"",
        "RevenueNo":"",
        "ProjectedAmountCurrencyId":1113,
        "ProjectedAmountExcahngeRate":1,
        "ProjectedAmountChangeApplied":"2017-03-14T00:00:00Z",
        "ActualAmountCurrencyId":1113,
        "ActualAmountExcahngeRate":1,
        "ActualAmountChangeApplied":"2017-03-14T00:00:00Z",
        "IsDependUponTaskStartDate":true,
        "IsConsiderActualValue":false,
        "DependingOnTaskId" :0
    }
}
  

  
"For recurring revenue" 
{    
    {
        "RevenueName":"Recurring revenue",
        "Description":"description",
        "RevenueStatusId":22,
        "StatusDate": "2017-07-05T00:00:00Z",,
        "RevenueNo":"1234",
        "ActualAmount":100,
        "ActualAmountCurrencyId":1113,
        "ProjectedAmountExchangeRate":1,
        "ActualAmountChangeApplied":"2017-07-05T08:43:23.076Z",
        "ProjectedAmount":100,
        "ProjectedAmountCurrencyId":1113,
        "ProjectedAmountExchangeRate":1,
        "ProjectedAmountChangeApplied":"2017-07-05T08:43:23.076Z",
        "DependingOnTaskId":0,
        "IsRecurrence":true,
        "DueDateAfter":1,
        "FirstRevenueDate":"2017-07-05T00:00:00Z",
        "RepeatsOn":2,
        "RepeatsOnValue":1,
        "NumberOfRecurrences":2    
    }
}
Responses201400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "RevenueId":345,
        "StatusMessage": "Revenue inserted successfully",
        "StatusCode": 201
    }
} 

 

{
    {
        "RevenueId": [
        "3026","3027"
        ],
        "StatusMessage": "Revenue(s) inserted successfully",
        "StatusCode": 201
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "RevenueId": 0,
        "StatusMessage": "Project doesn't exist",
        "StatusCode": 400
}
{
        "RevenueId": 0,
        "StatusMessage": "Please enter revenue name",
        "StatusCode": 400
}
{
        "RevenueId": 0,
        "StatusMessage": "Please enter status date",
        "StatusCode": 400
}
{
        "RevenueId": 0,
        "StatusMessage": "Please enter valid status id",
        "StatusCode": 400
}
{
        "RevenueId": 0,
        "StatusMessage": "Please enter valid status date",
        "StatusCode": 400
}
{
        "RevenueId": 0,
        "StatusMessage": "Please enter valid due date",
        "StatusCode": 400
}
{
        "RevenueId": 0,
        "StatusMessage": "Please enter valid Projected amount",
        "StatusCode": 400
}
{
        "RevenueId": 0,
        "StatusMessage": "Please enter valid actual amount",
        "StatusCode": 400
}
{
        "RevenueId": 0,
        "StatusMessage": "Please enter valid projected amount currency id",
        "StatusCode": 400
}
{
        "RevenueId": 0,
        "StatusMessage": "Please enter valid total amount currency id",
        "StatusCode": 400
}
{
        "RevenueId": 0,
        "StatusMessage": "Please enter valid depending task id",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Add project revenue
POST/project/{ProjectId}/revenue

Note :Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/revenue
    • Example:
      • /project/331/revenue
URI Parameters
HideShow
ProjectId
int (required) Example: 331

Update a project revenue

This method serves to update a project revenue.

PUT https://api.itmplatform.com/company1/project/331/revenue/331
Requestswith body
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "RevenueName":"Test Update",
        "RevenueStatusId":22,
        "ProjectedAmount":100,
        "ActualAmount":0,
        "Description":"",
        "StatusDate":"2017-03-14T00:00:00Z",
        "DueDate":"2017-03-14T00:00:00Z",
        "TaskDateGap":0,
        "IsDependOnTask":false,
        "IsStartDate":"",
        "RevenueNo":"",
        "ProjectedAmountCurrencyId":1113,
        "ProjectedAmountExcahngeRate":1,
        "ProjectedAmountChangeApplied":"2017-03-14T00:00:00Z",
        "ActualAmountCurrencyId":1113,
        "ActualAmountExcahngeRate":1,
        "ActualAmountChangeApplied":"2017-03-14T00:00:00Z",
        "IsDependUponTaskStartDate":true,
        "IsConsiderActualValue":false,
        "DependingOnTaskId" :0
    }
}
Responses201400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "RevenueId":345,
        "StatusMessage": "Revenue updated successfully",
        "StatusCode": 201
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "RevenueId": 0,
        "StatusMessage": "Project doesn't exist",
        "StatusCode": 400
}
{
        "RevenueId": 0,
        "StatusMessage": "Please enter valid revenue id",
        "StatusCode": 400
}
{
        "RevenueId": 0,
        "StatusMessage": "Please enter revenue name",
        "StatusCode": 400
}
{
        "RevenueId": 0,
        "StatusMessage": "Please enter status date",
        "StatusCode": 400
}
{
        "RevenueId": 0,
        "StatusMessage": "Please enter status id greater than 0",
        "StatusCode": 400
}
{
        "RevenueId": 0,
        "StatusMessage": "Please enter valid status id",
        "StatusCode": 400
}
{
        "RevenueId": 0,
        "StatusMessage": "Please enter valid status date",
        "StatusCode": 400
}
{
        "RevenueId": 0,
        "StatusMessage": "Please enter valid due date",
        "StatusCode": 400
}
{
        "RevenueId": 0,
        "StatusMessage": "Please enter valid Projected amount",
        "StatusCode": 400
}
{
        "RevenueId": 0,
        "StatusMessage": "Please enter valid actual amount",
        "StatusCode": 400
}
{
        "RevenueId": 0,
        "StatusMessage": "Please enter valid projected amount currency id",
        "StatusCode": 400
}
{
        "RevenueId": 0,
        "StatusMessage": "Please enter valid total amount currency id",
        "StatusCode": 400
}
{
        "RevenueId": 0,
        "StatusMessage": "Please enter valid depending task id",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Update a project revenue
PUT/project/{ProjectId}/revenue/{RevenueId}

Note :Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/revenue/{RevenueId}
    • Example:
      • /project/331/revenue/345
URI Parameters
HideShow
ProjectId
int (required) Example: 331
RevenueId
int (required) Example: 331

Get project revenue status

This method serves to retrieve a list of all revenue status of a particular project.

GET https://api.itmplatform.com/company1/project/331/revenuestatuses
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "RevenueStatusName": "Available",
    "RevenueStatusBaseId": 22,
    "IsConsiderAsActualValue": false,
    "IconPath": "~/UploadData/Iconlibrary/plus.png",
    "IsDefault": true
  },
  {
    "RevenueStatusName": "Away",
    "RevenueStatusBaseId": 16,
    "IsConsiderAsActualValue": false,
    "IconPath": "~/UploadData/Iconlibrary/application--plus.png",
    "IsDefault": false
  },
  {
    "RevenueStatusName": "Busy",
    "RevenueStatusBaseId": 13,
    "IsConsiderAsActualValue": false,
    "IconPath": "~/UploadData/Iconlibrary/chart-pie-separate.png",
    "IsDefault": false
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get project revenue status
GET/project/{ProjectId}/revenuestatuses

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/revenuestatuses
    • Example:
      • /project/331/revenuestatuses
URI Parameters
HideShow
ProjectId
int (required) Example: 331

Project Risks

Get project risks

This method serves to retrieve a list of all risks of a particular project, including their details.

GET https://api.itmplatform.com/company1/project/8070/risks
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "ProjectId": 331,
    "RiskId": 599,
    "RiskNo": "R-1142-17030004",
    "RiskName": "New Risk",
    "RiskType": {
      "RiskTypeName": "Scope",
      "RiskTypeId": 3976
    },
    "RiskStatus": {
      "RiskStatusName": "Analyzed",
      "RiskStatusId": 3005
    },
    "RiskImpact": {
      "RiskImpactName": "High (145)",
      "RiskImpactId": 3952
    },
    "RiskProbability": {
      "RiskProbabilityName": "High (4)",
      "RiskProbabilityId": 3927
    },
    "RiskLevel": {
      "RiskLevelName": "High (580)",
      "RiskLevelId": 3009
    },
    "RiskManager": {
      "UserId": 1686,
      "EmailAddress": "major.wyman@globalcorp360.com",
      "DisplayName": "Major Wyman"
    },
    "RiskDescription": "",
    "MitigationPlan": "",
    "ContigencyPaln": "",
    "Assessment": "Yellow",
    "IsDocumentAttached": 0
  },
  {
    "ProjectId": 331,
    "RiskId": 605,
    "RiskNo": "R-1142-17030008",
    "RiskName": "New Risk 1",
    "RiskType": {
      "RiskTypeName": "Organizational",
      "RiskTypeId": 3978
    },
    "RiskStatus": {
      "RiskStatusName": "Not Analyzed",
      "RiskStatusId": 3004
    },
    "RiskImpact": null,
    "RiskProbability": null,
    "RiskLevel": null,
    "RiskManager": null,
    "RiskDescription": "",
    "MitigationPlan": "",
    "ContigencyPaln": "",
    "Assessment": "",
    "IsDocumentAttached": 0
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get project risks
GET/project/{ProjectId}/risks

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/risks
    • Example:
      • /project/331/risks
      • For fixed urls: {AccountName}/project/331/risks
      • For urls with Filters in them:
        • {AccountName}/project/331/risks/?RiskId=2576
        • {AccountName}/project/331/risks/?RiskId=2576&RiskName=Test 1

Filter Operators :

  • gt - “greater than” - returns items with the specified attribute that is greater than the defined value

  • lt - “less than” - returns items with the specified attribute that is less than the defined value

  • eql - “equal to” - returns items with the specified attribute that is equal to the defined value

Conjunction operators :

  • AND - returns items that meet all filter operators

  • OR - returns items that meet at least one filter operator

Examples of Filter URL :

URI Parameters
HideShow
ProjectId
int (required) Example: 8070
RiskId
string (optional) Example: 2576
RiskNo
string (optional) 
RiskName
string (optional) 
RiskType.RiskTypeName
string (optional) 
RiskType.RiskTypeId
string (optional) 
User.UserId
string (optional) 
RiskStatus.RiskStatusName
string (optional) 
RiskStatus.RiskStatusId
string (optional) 
RiskImpact.RiskImpactName
string (optional) 
RiskImpact.RiskImpactId
string (optional) 
RiskProbability.RiskProbabilityName
string (optional) 
RiskProbability.RiskProbabilityId
string (optional) 
RiskLevel.RiskLevelName
string (optional) 
RiskLevel.RiskLevelId
string (optional) 
RiskDescription
string (optional) 
MitigationPlan
string (optional) 
ContigencyPaln
string (optional) 
Assessment
string (optional) 
IsDocumentAttached
string (optional) 

Get project risk managers

This method serves to retrieve a list of all risk managers of a particular project.

GET https://api.itmplatform.com/company1/project/331/riskmanagers
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "ProjectUserId": 706,
    "Manager": "Julio Cline"
  },
  {
    "ProjectUserId": 715,
    "Manager": "David Simon"
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get project risk managers
GET/project/{ProjectId}/riskmanagers

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/riskmanagers
    • Example:
      • /project/331/riskmanagers
URI Parameters
HideShow
ProjectId
int (required) Example: 331

Get a project risk

This method serves to retrieve a project risk detail

GET https://api.itmplatform.com/company1/project/331/risk/622
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
         "ProjectId": 331,
         "RiskId": 622,
         "RiskNo": "R-1142-17030025",
         "RiskName": "New Risk from API new 2",
         "RiskType": "Technical",
         "RiskTypeId": 3975,
         "RiskManager": "Major Wyman",
         "RiskManagerId": 2524,
         "RiskStatus": "Analyzed",
         "RiskStatusId": 3005,
         "RiskImpact": "Low (1)",
         "RiskImpactId": 3955,
         "RiskProbability": "High (4)",
         "RiskProbabilityId": 3927,
         "RiskLevel": "Low",
         "RiskLevelId": 3011,
         "RiskDescription": "Risk description",
         "MitigationPlan": "Mitigation plan",
         "ContigencyPaln": "Contigency Paln",
         "Assessment": null,
         "IsDocumentAttached": 0
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get a project risk
GET/project/{ProjectId}/risk/{RiskId}

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/risk/{RiskId}
    • Example:
      • /project/331/risk/622
URI Parameters
HideShow
ProjectId
int (required) Example: 331
RiskId
int (required) Example: 622

Add a project risk

This method serves to add a project risk.

POST https://api.itmplatform.com/company1/project/331/risk
Requestswith body
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "RiskName":"New Risk from API",
        "RiskTypeId":3975,
        "RiskManagerId":0,
        "RiskStatusId":3005,
        "RiskImpactId":3953,
        "RiskProbabilityId":3927,
        "RiskLevelId":0,
        "RiskDescription":"Risk description",
        "MitigationPlan":"Mitigation plan",
        "ContigencyPaln" :"Contigency Paln"
    }
}
Responses201400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "RiskId":67,
        "StatusMessage": "Risk inserted successfully",
        "StatusCode": 201
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "RiskId":0,
        "StatusMessage": "Project doesn't exist",
        "StatusCode": 400
}
{
        "RiskId":0,
        "StatusMessage": "Risk name already exists",
        "StatusCode": 400
}
{
        "RiskId":0,
        "StatusMessage": "Please enter risk name",
        "StatusCode": 400
}
{
        "RiskId":0,
        "StatusMessage": "Please enter risk type id greater than 0",
        "StatusCode": 400
}
{
        "RiskId":0,
        "StatusMessage": "Please enter valid risk type id",
        "StatusCode": 400
}
{
        "RiskId":0,
        "StatusMessage": "Please enter risk status id greater than 0",
        "StatusCode": 400
}
{
        "RiskId":0,
        "StatusMessage": "Please enter valid risk status id",
        "StatusCode": 400
}
{
        "RiskId":0,
        "StatusMessage": "Please enter risk impact id greater than 0",
        "StatusCode": 400
}
{
        "RiskId":0,
        "StatusMessage": "Please enter valid risk impact id",
        "StatusCode": 400
}
{
        "RiskId":0,
        "StatusMessage": "Please enter risk probability id greater than 0",
        "StatusCode": 400
}
{
        "RiskId":0,
        "StatusMessage": "Please enter valid risk probability id",
        "StatusCode": 400
}
{
        "RiskId":0,
        "StatusMessage": "Please enter valid risk manager id",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Add a project risk
POST/project/{ProjectId}/risk

Note :Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/risk
    • Example:
      • /project/331/risk
URI Parameters
HideShow
ProjectId
int (required) Example: 331

Update a project risk

This method serves to update a project risk.

PUT https://api.itmplatform.com/company1/project/331/risk/67
Requestswith body
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "RiskName":"New Risk from API",
        "RiskTypeId":3975,
        "RiskManagerId":0,
        "RiskStatusId":3005,
        "RiskImpactId":3953,
        "RiskProbabilityId":3927,
        "RiskLevelId":0,
        "RiskDescription":"Risk description",
        "MitigationPlan":"Mitigation plan",
        "ContigencyPaln" :"Contigency Paln"
    }
}
Responses201400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "RiskId":67,
        "StatusMessage": "Risk updated successfully",
        "StatusCode": 201
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "RiskId":0,
        "StatusMessage": "Project doesn't exist",
        "StatusCode": 400
}
{
        "RiskId":0,
        "StatusMessage": "Please enter valid risk id",
        "StatusCode": 400
}
{
        "RiskId":0,
        "StatusMessage": "Risk name already exists",
        "StatusCode": 400
}
{
        "RiskId":0,
        "StatusMessage": "Please enter risk name",
        "StatusCode": 400
}
{
        "RiskId":0,
        "StatusMessage": "Please enter risk type id greater than 0",
        "StatusCode": 400
}
{
        "RiskId":0,
        "StatusMessage": "Please enter valid risk type id",
        "StatusCode": 400
}
{
        "RiskId":0,
        "StatusMessage": "Please enter risk status id greater than 0",
        "StatusCode": 400
}
{
        "RiskId":0,
        "StatusMessage": "Please enter valid risk status id",
        "StatusCode": 400
}
{
        "RiskId":0,
        "StatusMessage": "Please enter risk impact id greater than 0",
        "StatusCode": 400
}
{
        "RiskId":0,
        "StatusMessage": "Please enter valid risk impact id",
        "StatusCode": 400
}
{
        "RiskId":0,
        "StatusMessage": "Please enter risk probability id greater than 0",
        "StatusCode": 400
}
{
        "RiskId":0,
        "StatusMessage": "Please enter valid risk probability id",
        "StatusCode": 400
}
{
        "RiskId":0,
        "StatusMessage": "Please enter valid risk manager id",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Update a project risk
PUT/project/{ProjectId}/risk/{RiskId}

Note :Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/risk/{RiskId}
    • Example:
      • /project/331/risk/67
URI Parameters
HideShow
ProjectId
int (required) Example: 331
RiskId
int (required) Example: 67

Delete a project risk

This method serves to delete a project risk detail.

DELETE https://api.itmplatform.com/company1/project/331/risk/599
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "RiskId":0,
        "StatusMessage": "Risk deleted successfully",
        "StatusCode": 200
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "RiskId":0,
        "StatusMessage": "Project doesn't exist",
        "StatusCode": 400
}
{
        "StatusMessage": "Risk id doesn't exist",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "RiskId": 0,
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Delete a project risk
DELETE/project/{ProjectId}/risk/{RiskId}

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/risk/{RiskId}
    • Example:
      • /project/331/risk/599
URI Parameters
HideShow
ProjectId
int (required) Example: 331
RiskId
int (required) Example: 599

Costing

Get providers

This method serves to retrieve list of providers.

GET https://api.itmplatform.com/company1/providers
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "ProviderId": 97,
    "ProviderName": "Google ",
    "ProviderCode": "",
    "StreetAddress": "",
    "City": "",
    "EmailAddress": "",
    "State": "",
    "CountryId": 334,
    "CountryName": "Algeria",
    "Website": "",
    "Phone": "",
    "ZipCode": "",
    "ParticularPaymentPeriod": 100,
    "Tax": 100
  },
  {
    "ProviderId": 98,
    "ProviderName": "New Provicer",
    "ProviderCode": "",
    "StreetAddress": "",
    "City": "",
    "EmailAddress": "",
    "State": "",
    "CountryId": 0,
    "CountryName": "",
    "Website": "",
    "Phone": "",
    "ZipCode": "",
    "ParticularPaymentPeriod": 10,
    "Tax": 0
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get providers
GET/providers

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/providers
    • Example:
      • /providers

Get categories

This method serves to retrieve list of categories.

GET https://api.itmplatform.com/company1/effortcategories
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "CategoryId": 379,
    "AccountId": 1142,
    "CategoryName": "Default One",
    "IsDefault": true,
    "Active": true
  },
  {
    "CategoryId": 403,
    "AccountId": 1142,
    "CategoryName": "Software Engineer",
    "IsDefault": false,
    "Active": true
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get categories
GET/effortcategories

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/effortcategories
    • Example:
      • /effortcategories

User Management

Get users

This method serves to retrieve list of account users.

GET https://api.itmplatform.com/company1/users
Responses200400401
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "UserId": 1686,
    "AccountId": 1142,
    "DisplayName": "David Simon",
    "FirstName": "David",
    "LastName": "Simon",
    "UserName": "stakeholder@globalcorp360.com",
    "Photo": "",
    "LanguageId": 1,
    "DepartmentId": 0,
    "IsActive": true,
    "GroupId": 0,
    "CurrentPosition": "",
    "ProviderName": "",
    "ProviderId": 0,
    "CategoryName": "",
    "CategoryId": 0,
    "DepartmentName": "",
    "LanuageName": "English",
    "StandardWorkHourName": "Default",
    "StandardWorkHourId": 581,
    "UserRole": "",
    "UserLicense": "",
    "UserGroup": "",
    "IsNonLoginUser": false
  },
  {
    "UserId": 1687,
    "AccountId": 1142,
    "DisplayName": "Julio Cline",
    "FirstName": "Cline",
    "LastName": "Patel",
    "UserName": "jucli@globalcorp360.com",
    "Photo": "",
    "LanguageId": 1,
    "DepartmentId": 0,
    "IsActive": true,
    "GroupId": 0,
    "CurrentPosition": "Hidden",
    "ProviderName": "",
    "ProviderId": 0,
    "CategoryName": "Default One",
    "CategoryId": 379,
    "DepartmentName": "",
    "LanuageName": "English",
    "StandardWorkHourName": "Default",
    "StandardWorkHourId": 581,
    "UserRole": "GIT FREE WK, Project Document Test",
    "UserLicense": "GIT_FREE_ALL, GIT_FREE_WK",
    "UserGroup": "",
    "IsNonLoginUser": false
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}

Get users
GET/users

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/users
    • Example:
      • /users
      • For fixed urls: {AccountName}/users
      • For urls with Filters in them:
        • {AccountName}/users?UserId=20411
        • {AccountName}/users?UserId=20411&FirstName=Test

Filter Operators :

  • gt - “greater than” - returns items with the specified attribute that is greater than the defined value

  • lt - “less than” - returns items with the specified attribute that is less than the defined value

  • eql - “equal to” - returns items with the specified attribute that is equal to the defined value

Conjunction operators :

  • AND - returns items that meet all filter operators

  • OR - returns items that meet at least one filter operator

Examples of Filter URL :

URI Parameters
HideShow
UserId
string (required) Example: 8070
AccountId
string (optional) Example: 2079
DisplayName
string (optional) 
FirstName
string (optional) 
LastName
string (optional) 
UserName
string (optional) 
LanguageId
string (optional) 
DepartmentId
string (optional) 
IsActive
string (optional) 
GroupId
string (optional) 
CurrentPosition
string (optional) 
ProviderName
string (optional) 
ProviderId
string (optional) 
CategoryName
string (optional) 
CategoryId
string (optional) 
DepartmentName
string (optional) 
LanuageName
string (optional) 
StandardWorkHourName
string (optional) 
StandardWorkHourId
string (optional) 
UserRole
string (optional) 
UserLicense
string (optional) 
UserGroup
string (optional) 
IsNonLoginUser
string (optional) 

My Profile

Get my detail

This method serves to retrieve my detail.

GET https://api.itmplatform.com/company1/mydetail
Responses200400401
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "LoginName": "stakeholder@globalcorp360.com",
        "AlternativeEmailAddress": "me@globalcorp360.co.in",
        "FirstName": "David",
        "LastName": "Simon",
        "LanguageId": 1,
        "ProfessionalExperience": ".Net & Windows Phone 1",
        "Specialities": "test",
        "Linkdin": "",
        "Facebook": "",
        "Website": "stakeholder@globalcorp360.com",
        "Resume": null,
        "Photo": null,
        "AboutMe": "test",
        "DateFormatTypeId": 0,
        "FirstDayOfWeekId": 0,
        "NumberFormatId": 1
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}

Get my detail
GET/mydetail

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/mydetail
    • Example:
      • /mydetail

Update my detail

This method serves to update my detail.

PUT https://api.itmplatform.com/company1/mydetail
Requestswith body
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "LoginName":"new.user@globalcorp360.com",
        "AlternativeEmailAddress":"me@globalcorp360.co.in",
        "FirstName":"John",
        "LastName":"Doe",
        "LanguageId":1,
        "ProfessionalExperience":".Net & Windows Phone 1",
        "Specialities":"test",
        "Linkdin":"test",
        "Facebook":"test",
        "Website":"john.blogspot.com",
        "Resume":"",
        "Photo":"",
        "AboutMe":"",
        "DateFormatTypeId":2,
        "FirstDayOfWeekId": 0,
        "NumberFormatId": 1
    }
}
Responses200400401
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "UserId":1686,
        "StatusMessage": "User updated successfully",
        "StatusCode": "200"
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "UserId":0,
        "StatusMessage": "User doesn't exist",
        "StatusCode": 400
}
{
        "UserId":0,
        "StatusMessage": "Please enter login name(Email Address)",
        "StatusCode": 400
}
{
        "UserId":0,
        "StatusMessage": "Please enter valid email address",
        "StatusCode": 400
}
{
        "UserId":0,
        "StatusMessage": "Please enter first name",
        "StatusCode": 400
}
{
        "UserId":0,
        "StatusMessage": "Please enter last name",
        "StatusCode": 400
}
{
        "UserId":0,
        "StatusMessage": "Please enter valid language id",
        "StatusCode": 400
}
{
        "UserId":0,
        "StatusMessage": "Please enter valid alternative email address",
        "StatusCode": 400
}
{
        "UserId":0,
        "StatusMessage": "Please enter valid website",
        "StatusCode": 400
}
{
        "UserId":0,
        "StatusMessage": "Date format type id should be 1 or 2",
        "StatusCode": 400
}
{
        "UserId":0,
        "StatusMessage": "First day of week id should be between 0(sun) to 6 (sat)",
        "StatusCode": 400
}
{
        "UserId":0,
        "StatusMessage": "Number format type id should be 1 or 2",
        "StatusCode": 400
}
{
        "UserId":0,
        "StatusMessage": "Login name already exists",
        "StatusCode": 400
}
{
        "UserId":0,
        "StatusMessage": "This user is currently inactive",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}

Update my detail
PUT/mydetail

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/mydetail
    • Example:
      • /mydetail

Get my default preference

This method serves to retrieve my default preference.

GET https://api.itmplatform.com/company1/mydefaultpreference
Responses200400401
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "OnCommentsOfMyMsg": true,
        "OnMsgThatIHaveCommented": true,
        "OnDirectMsg": true,
        "OnSystemDirectMsg": true,
        "OnTeamBoardMsg": true,
        "OnTaskStartBeforeDays": true,
        "OnTaskEndBeforeDays": true,
        "DaysBeforeTaskStart": 10,
        "DaysBeforeTaskEnd": 1,
        "DaysAhead": 3,
        "IsActive": true,
        "DaysAfterStatusChanged": 5
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}

Get my default preference
GET/mydefaultpreference

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/mydefaultpreference
    • Example:
      • /mydefaultpreference

update my default preference

This method serves to update my default preferences.

PUT https://api.itmplatform.com/company1/mydefaultpreference
Requestswith body
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "OnCommentsOfMyMsg": true,
        "OnMsgThatIHaveCommented": true,
        "OnDirectMsg": true,
        "OnSystemDirectMsg": true,
        "OnTeamBoardMsg": true,
        "OnTaskStartBeforeDays": true,
        "OnTaskEndBeforeDays": true,
        "DaysBeforeTaskStart": 10,
        "DaysBeforeTaskEnd": 1,
        "DaysAhead": 3,
        "IsActive": true,
        "DaysAfterStatusChanged": 5
    }
}
Responses200400401
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "StatusMessage": "Record updated successfully",
        "StatusCode": "200"
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "StatusMessage": "Detail doesn't exist",
        "StatusCode": 400
}
{
        "StatusMessage": "Days before task start should be between 0 to 365",
        "StatusCode": 400
}
{
        "StatusMessage": "Days before task end should be between 0 to 365",
        "StatusCode": 400
}
{
        "StatusMessage": "Days ahead should be between 0 to 365",
        "StatusCode": 400
}
{
        "StatusMessage": "Days after status changed should be between 0 to 365",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}

update my default preference
PUT/mydefaultpreference

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/mydefaultpreference
    • Example:
      • /mydefaultpreference

Get my educations

This method serves to retrieve list of my education.

GET https://api.itmplatform.com/company1/myeducations
Responses200400401
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "SrNo": 1,
    "UserEducationId": 68,
    "CountryId": 355,
    "InstituteName": "test1 123",
    "Degree": "test2",
    "EducationStartMonthId": 6,
    "EducationStartYear": 2013,
    "EducationEndMonthId": 2,
    "EducationEndYear": 2016,
    "Activities": "test3",
    "Note": "test4",
    "DisplayPublic": true
  },
  {
    "SrNo": 2,
    "UserEducationId": 71,
    "CountryId": 378,
    "InstituteName": "test 3",
    "Degree": "test 4",
    "EducationStartMonthId": 1,
    "EducationStartYear": 2016,
    "EducationEndMonthId": 1,
    "EducationEndYear": 2017,
    "Activities": "test 5",
    "Note": "test 6",
    "DisplayPublic": false
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}

Get my educations
GET/myeducations

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/myeducations
    • Example:
      • /myeducations

Get my education

This method serves to retrieve my education detail.

GET https://api.itmplatform.com/company1/myeducation/68
Responses200400401
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "SrNo": 1,
        "UserEducationId": 68,
        "CountryId": 355,
        "InstituteName": "test1 123",
        "Degree": "test2",
        "EducationStartMonthId": 6,
        "EducationStartYear": 2013,
        "EducationEndMonthId": 2,
        "EducationEndYear": 2016,
        "Activities": "test3",
        "Note": "test4",
        "DisplayPublic": true
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}

Get my education
GET/myeducation/{UserEducationId}

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/myeducation/{UserEducationId}
    • Example:
      • /myeducation/68
URI Parameters
HideShow
UserEducationId
int (required) Example: 68

Add my education

This method serves to add my education detail.

POST https://api.itmplatform.com/company1/myeducation
Requestswith body
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "CountryId": 355,
        "InstituteName": "test institute",
        "Degree": "test2",
        "EducationStartMonthId": 6,
        "EducationStartYear": 2013,
        "EducationEndMonthId": 2,
        "EducationEndYear": 2016,
        "Activities": "test3",
        "Note": "test4",
        "DisplayPublic": true
    }
}
Responses200400401
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "UserEducationId":68,
        "StatusMessage": "User Education inserted successfully",
        "StatusCode": 200
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "UserEducationId":0,
        "StatusMessage": "Please enter institute name",
        "StatusCode": 400
}
{
        "UserEducationId":0,
        "StatusMessage": "Please enter degree",
        "StatusCode": 400
}
{
        "UserEducationId":0,
        "StatusMessage": "Please enter country id greater than 0",
        "StatusCode": 400
}
{
        "UserEducationId":0,
        "StatusMessage": "Please enter education start month id between 1 to 12",
        "StatusCode": 400
}
{
        "UserEducationId":0,
        "StatusMessage": "Please enter valid education start year",
        "StatusCode": 400
}
{
        "UserEducationId":0,
        "StatusMessage": "Please enter education end  month id between 1 to 12",
        "StatusCode": 400
}
{
        "UserEducationId":0,
        "StatusMessage": "Please enter valid education end year",
        "StatusCode": 400
}
{
        "UserEducationId":0,
        "StatusMessage": "Please enter valid country id",
        "StatusCode": 400
}
{
        "UserEducationId":0,
        "StatusMessage": "Education end year must be the same as or later than start year",
        "StatusCode": 400
}
{
        "UserEducationId":0,
        "StatusMessage": "Education end month id must be the same as or later than start month id",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}

Add my education
POST/myeducation

Note :Pass token as parameter in HTTP request header.

  • {AccountName}/myeducation
    • Example:
      • /myeducation

Update my education

This method serves to update my education detail.

PUT https://api.itmplatform.com/company1/myeducation/68
Requestswith body
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "CountryId": 355,
        "InstituteName": "test institute",
        "Degree": "test2",
        "EducationStartMonthId": 6,
        "EducationStartYear": 2013,
        "EducationEndMonthId": 2,
        "EducationEndYear": 2016,
        "Activities": "test3",
        "Note": "test4",
        "DisplayPublic": true
    }
}
Responses200400401
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "UserEducationId":68,
        "StatusMessage": "User Education updated successfully",
        "StatusCode": 200
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "UserEducationId":0,
        "StatusMessage": "User education detail doesn't exist",
        "StatusCode": 400
}
{
        "UserEducationId":0,
        "StatusMessage": "Please enter institute name",
        "StatusCode": 400
}
{
        "UserEducationId":0,
        "StatusMessage": "Please enter degree",
        "StatusCode": 400
}
{
        "UserEducationId":0,
        "StatusMessage": "Please enter country id greater than 0",
        "StatusCode": 400
}
{
        "UserEducationId":0,
        "StatusMessage": "Please enter education start month id between 1 to 12",
        "StatusCode": 400
}
{
        "UserEducationId":0,
        "StatusMessage": "Please enter valid education start year",
        "StatusCode": 400
}
{
        "UserEducationId":0,
        "StatusMessage": "Please enter education end  month id between 1 to 12",
        "StatusCode": 400
}
{
        "UserEducationId":0,
        "StatusMessage": "Please enter valid education end year",
        "StatusCode": 400
}
{
        "UserEducationId":0,
        "StatusMessage": "Please enter valid country id",
        "StatusCode": 400
}
{
        "UserEducationId":0,
        "StatusMessage": "Education end year must be the same as or later than start year",
        "StatusCode": 400
}
{
        "UserEducationId":0,
        "StatusMessage": "Education end month id must be the same as or later than start month id",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}

Update my education
PUT/myeducation/{UserEducationId}

Note :Pass token as parameter in HTTP request header.

  • {AccountName}/myeducation/{UserEducationId}
    • Example:
      • /myeducation/68
URI Parameters
HideShow
UserEducationId
int (required) Example: 68

Delete my education

This method serves to delete my education detail.

DELETE https://api.itmplatform.com/company1/myeducation/331
Responses200400401
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "UserEducationId":331,
        "StatusMessage": "User Education deleted successfully",
        "StatusCode": 200
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "UserEducationId":0,
        "StatusMessage": "User education detail doesn't exist",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}

Delete my education
DELETE/myeducation/{UserEducationId}

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/myeducation/{UserEducationId}
    • Example:
      • /myeducation/68
URI Parameters
HideShow
UserEducationId
int (required) Example: 331

Project Documents

Project Documents

This method serves to retrieve a list of all project documents including their details. You can apply filters to limit the results

GET https://api.itmplatform.com/company1/project/331/documents
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "DocumentId": 1519,
    "TaskId": 0,
    "ProjectId": 331,
    "TaskKindId": 0,
    "DocumentName": "Test Doc 1",
    "ShortDocumentName": "Test Doc 1",
    "AreaSection": "Android Mobile Application test ",
    "URL": "https://app.itmplatform.com//UploadData/1142/ProjectDocuments/331/Capture001.png",
    "Description": "Test",
    "UploadedDate": "2017-09-11T12:06:08.330Z",
    "IsExternal": false,
    "UploadedBy": {
      "UserId": 1686,
      "EmailAddress": "major.wyman@globalcorp360.com",
      "DisplayName": "Major Wyman"
    },
    "IsVisibleForGuest": false,
    "ParentTask": "",
    "TypeId": 338,
    "DocumentType": 1,
    "ViewFile": null,
    "FileUploadedPath": "https://app.itmplatform.com/UploadData/1142/ProjectDocuments/331/Capture001.png",
    "FileContentLength": 0,
    "IsService": false
  },
  {
    "DocumentId": 1520,
    "TaskId": 0,
    "ProjectId": 331,
    "TaskKindId": 0,
    "DocumentName": "Test Doc 2",
    "ShortDocumentName": "Test Doc 2",
    "AreaSection": "Android Mobile Application test ",
    "URL": "https://app.itmplatform.com/UploadData/1142/ProjectDocuments/331/Capture001_9_11_2017_12_9_59.png",
    "Description": "Test",
    "UploadedDate": "2017-09-11T12:06:08.330Z",
    "IsExternal": false,
    "UploadedBy": {
      "UserId": 1686,
      "EmailAddress": "major.wyman@globalcorp360.com",
      "DisplayName": "Major Wyman"
    },
    "IsVisibleForGuest": false,
    "ParentTask": "",
    "TypeId": 338,
    "DocumentType": 1,
    "ViewFile": null,
    "FileUploadedPath": "https://app.itmplatform.com/UploadData/1142/ProjectDocuments/331/Capture001_9_11_2017_12_9_59.png",
    "FileContentLength": 0,
    "IsService": false
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "StatusMessage": "Please enter valid filters",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get project documents
GET/project/{ProjectId}/documents

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/documents
    • Example:
      • /project/331/documents

OR

  • {AccountName}/project/331/documents/?DocumentId=Id
    • Example:
      • /project/331/documents/?DocumentId=8070
      • For fixed urls: {AccountName}/project/331/documents
      • For urls with Filters in them:
        • {AccountName}/project/331/documents?DocumentId=Id
        • {AccountName}/project/331/documents/?DocumentId=Id&DocumentType=Type

Filter Operators :

  • gt - “greater than” - returns items with the specified attribute that is greater than the defined value

  • lt - “less than” - returns items with the specified attribute that is less than the defined value

  • eql - “equal to” - returns items with the specified attribute that is equal to the defined value

Conjunction operators :

  • AND - returns items that meet all filter operators

  • OR - returns items that meet at least one filter operator

Examples of Filter URL :

6

URI Parameters
HideShow
ProjectId
int (required) Example: 331
DocumentId
string (optional) Example: 956
TaskId
string (optional) 
TaskKindId
string (optional) 
DocumentName
string (optional) 
ShortDocumentName
string (optional) 
AreaSection
string (optional) 
Description
string (optional) 
UploadedDate
string (optional) 
IsExternal
string (optional) 
UploadedBy
string (optional) 
IsVisibleForGuest
string (optional) 
ParentTask
string (optional) Example: 20141130
TypeId
string (optional) 
DocumentType
string (optional) 

Get a project document

This method serves to retrieve a project document detail.

GET https://api.itmplatform.com/company1/project/331/document/956
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "DocumentId": 956,
    "TaskId": 0,
    "ProjectId": 331,
    "TaskKindId": 0,
    "DocumentName": "Test Doc 1",
    "ShortDocumentName": null,
    "AreaSection": null,
    "URL": "https://app.itmplatform.com/UploadData/1142/ProjectDocuments/338/Capture001.png",
    "Description": "Test",
    "UploadedDate": null,
    "IsExternal": false,
    "UploadedBy": null,
    "IsVisibleForGuest": false,
    "ParentTask": null,
    "TypeId": 338,
    "DocumentType": 0,
    "FileUploadedPath": null,
    "FileContentLength": 0,
    "IsService": false
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get a project document
GET/project/{ProjectId}/document/{DocumentId}

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/document/{DocumentId}
    • Example:
      • /project/331/document/956
URI Parameters
HideShow
ProjectId
string (required) Example: 331
DocumentId
string (required) Example: 956

Add a project document

This method serves to add a project document. TypeId is id of the entity (for eg ProjectId for project document). To set URL of any document set IsExternal field true. For internal document set IsExternal is false and have to set FileUploadedPath.

Document Type is from following list:
ProjectDocument = 1,
TaskDocument = 2,
ServiceDocument = 3,
ActivityDocument = 4,
RiskMitigationDocument = 5, (this is not currently in used)
RiskContingencyDocument = 6,
PurchaseDocument = 7,
RevenueDocument = 8

POST https://api.itmplatform.com/company1/project/331/document
Requestswith body
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "DocumentName":"Document 1",
        "Description":"Description",
        "URL":"http://www.goole.com/",
        "IsExternal":true,
        "IsVisibleForGuest":true,
        "DocumentType":1,
        "TypeId":331,
        "FileUploadedPath":"",
        "FileContentLength":5884
    }
}
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "DocumentId":456,
        "StatusMessage": "Document inserted successfully",
        "StatusCode": 200
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "DocumentId":0,
        "StatusMessage": "Project doesn't exist",
        "StatusCode": 400
}
{
        "DocumentId":0,
        "StatusMessage": "Please enter document name",
        "StatusCode": 400
}
{
        "DocumentId":0,
        "StatusMessage": "Please enter file URL",
        "StatusCode": 400
}
{
        "DocumentId":0,
        "StatusMessage": "Please Upload except exe,dll,com,php,aspx or asp files",
        "StatusCode": 400
}
{
        "DocumentId":0,
        "StatusMessage": "Due to license policy, space allocated to you is full",
        "StatusCode": 400
}
{
        "DocumentId":0,
        "StatusMessage": "Please upload file smaller than +size+  MB",
        "StatusCode": 400

Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Add a project document
POST/project/{ProjectId}/document

Note :Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/document
    • Example:
      • /project/331/document
URI Parameters
HideShow
ProjectId
int (required) Example: 331

Update a project document

This method serves to update a project document.
TypeId is id of the entity (for eg ProjectId for project document). To set URL of any document set IsExternal field true. For internal document set IsExternal is false and have to set FileUploadedPath.

Document Type is from following list:
ProjectDocument = 1,
TaskDocument = 2,
ServiceDocument = 3,
ActivityDocument = 4,
RiskMitigationDocument = 5, (this is not currently in used)
RiskContingencyDocument = 6,
PurchaseDocument = 7,
RevenueDocument = 8

PUT https://api.itmplatform.com/company1/project/331/document/456
Requestswith body
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "DocumentName":"Document 1",
        "Description":"Description",
        "URL":"http://www.goole.com/",
        "IsExternal":true,
        "IsVisibleForGuest":true,
        "DocumentType":1,
        "TypeId":331,
        "FileUploadedPath":"",
        "FileContentLength":5884
    }
}
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "DocumentId":456,
        "StatusMessage": "Document updated successfully",
        "StatusCode": 200
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "DocumentId":0,
        "StatusMessage": "Document doesn't exist",
        "StatusCode": 400
}
{
        "DocumentId":0,
        "StatusMessage": "Project doesn't exist",
        "StatusCode": 400
}
{
        "DocumentId":0,
        "StatusMessage": "Please enter document name",
        "StatusCode": 400
}
{
        "DocumentId":0,
        "StatusMessage": "Please enter file URL",
        "StatusCode": 400
}
{
        "DocumentId":0,
        "StatusMessage": "Please Upload except exe,dll,com,php,aspx or asp files",
        "StatusCode": 400
}
{
        "DocumentId":0,
        "StatusMessage": "Due to license policy, space allocated to you is full",
        "StatusCode": 400
}
{
        "DocumentId":0,
        "StatusMessage": "Please upload file smaller than +size+  MB",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Update a project document
PUT/project/{ProjectId}/document/{DocumentId}

Note :Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/document/{DocumentId}
    • Example:
      • /project/331/document/456
URI Parameters
HideShow
ProjectId
int (required) Example: 331
DocumentId
int (required) Example: 456

Delete project documents

This method serves to delete multiple project documents by comma separated document id’s.

DELETE https://api.itmplatform.com/company1/project/331/documents/456,345
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
    {
        "StatusMessage": "Document deleted successfully",
        "StatusCode": 200
    }
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Token expired. Please generate a new token.",
        "StatusCode": 400
}
{
        "StatusMessage": "Project doesn't exist",
        "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Delete project documents
DELETE/project/{ProjectId}/documents/{DocumentIds}

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/documents/{DocumentIds}
    • Example:
      • /project/331/documents/456,34
URI Parameters
HideShow
ProjectId
int (required) Example: 331
DocumentIds
string (required) Example: 456,345

Get a document uploaded by users

This method serves to retrieve a list of users who upload document for particular project.

GET https://api.itmplatform.com/company1/project/331/uploadedbyusers
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "UserId": 1686,
    "DisplayName": "David Simon (stakeholder@globalcorp360.com)"
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
        "StatusMessage": "Invalid Token.",
        "StatusCode": 401

Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get a document uploaded by users
GET/project/{ProjectId}/uploadedbyusers

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/project/{ProjectId}/uploadedbyusers
    • Example:
      • /project/331/uploadedbyusers
URI Parameters
HideShow
ProjectId
string (required) Example: 331

Custom Fields

Custom Fields

This method serves to retrieve a list of all custom fields.

Page Id is from following list:

Project = 57,
Service = 70,
Task = 66,
Activity = 94,
Programs = 137,
ProjectRisk = 62,
ProjectFollowUp = 63,
Revenue = 181,
Purchases = 25

GET https://api.itmplatform.com/company1/customfieldcolumns?PageId=PageId
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "CustomFieldId": 0,
    "AccountId": 0,
    "LanguageId": 0,
    "CustomFieldBaseId": "custField966",
    "PageId": 57,
    "CustomFieldTypeId": 6,
    "CustomFieldName": "test ryg field",
    "Description": null,
    "Required": false,
    "CustomFieldValue": null,
    "CustomFieldTypeName": "RYGList",
    "Option": false,
    "ColorList": false,
    "IsVisible": false,
    "Options": null
  },
  {
    "CustomFieldId": 0,
    "AccountId": 0,
    "LanguageId": 0,
    "CustomFieldBaseId": "custField972",
    "PageId": 57,
    "CustomFieldTypeId": 3,
    "CustomFieldName": "Project Custom Field",
    "Description": null,
    "Required": false,
    "CustomFieldValue": null,
    "CustomFieldTypeName": "Percentage",
    "Option": false,
    "ColorList": false,
    "IsVisible": false,
    "Options": null
  }
]
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Token expired. Please generate a new token.",
  "StatusCode": 400
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "Invalid Token.",
  "StatusCode": 401
}
Headers
Content-Type: application/json
Token: {Token Value}
Body
{
  "StatusMessage": "We're Sorry but you need additional privileges to complete this action.",
  "StatusCode": 403
}

Get custom fields
GET/customfieldcolumns?PageId=PageId

Note : Pass token as parameter in HTTP request header.

  • {AccountName}/customfieldcolumns?PageId=PageId
    • Example:
      • /customfieldcolumns?PageId=57
URI Parameters
HideShow
PageId
string (required) Example: 57

Custom Fields By Type

This method serves to retrieve a list of all custom fields by type and page Id. Type Id is ProjectTypeBaseId.

Page Id is from following list:

Project = 57,
Service = 70,
Task = 66,
Activity = 94,
Programs = 137,
ProjectRisk = 62,
ProjectFollowUp = 63,
Revenue = 181,
Purchases = 25

GET https://api.itmplatform.com/company1/project/type/0/customfields?PageId=PageId
Responses200400401403
Headers
Content-Type: application/json
Token: {Token Value}
Body
[
  {
    "CustomFieldId": 966,
    "AccountId": 1142,
    "LanguageId": 1,
    "CustomFieldBaseId": "966",
    "PageId": 57,
    "CustomFieldTypeId": 6,
    "CustomFieldName": "test ryg field",
    "Description": "",
    "Required": false,
    "CustomFieldValue": "",
    "CustomFieldTypeName": "RYGList",
    "Option": false,
    "ColorList": true,
    "IsVisible": true,
    "Options": [
      {
        "CustomFieldOptionId": 1123,
        "CustomFieldOptionBaseId": 1123,
        "CustomFieldId": 966,
        "Text": "Ready",
        "ColorName": "Red",
        "SortOrder": 1,
        "Selected": false,
        "SelectedOptions": "1126,"
      },
      {
        "CustomFieldOptionId": 1126,
        "CustomFieldOptionBaseId": 1126,
        "CustomFieldId": 966,
        "Text": "Steady",
        "ColorName": "Yellow",
        "SortOrder": 2,
        "Selected": false,
        "SelectedOptions": "1126,"
      },
      {
        "CustomFieldOptionId": 1129,
        "CustomFieldOptionBaseId": 1129,
        "CustomFieldId": 966,
        "Text": "Go",
        "ColorName": "Green",
        "SortOrder": 3,
        "Selected": false,
        "SelectedOptions": "1126,"
      }
    ]
  },
  {
    "CustomFieldId": 972,
    "AccountId": 1142,
    "LanguageId": 1,
    "CustomFieldBaseId": "972",
    "PageId": 57,
    "CustomFieldTypeId": 3,
    "CustomFieldName": "Project Custom Field",
    "Description": "",
    "Required": false,
    "CustomFieldValue": "",
    "