SmartPM (1.0.0)

Download OpenAPI specification:Download

Introduction

Welcome to the reference for the SmartPM REST API!

The SmartPM REST API provides access to data for schedules that have been analyzed in SmartPM. If there is a particular dataset that you need access to that is missing from the API please contact us at support@smartpmtech.com.

Access to the API

You can access the SmartPM REST API using the https://live.smartpmtech.com endpoint

Authentication

API Key Authentication

In order to access the SmartPM API you must authenticate each request using an API Key, note the API Key will give full access to your data, so be sure to keep it safe and rotate it frequently.

In order to generate an API Key requires the following steps:

Step 1. Login to SmartPM using your credentials.

Step 2. Navigate to the admin section of SmartPM by clicking on "Admin" in the left navigation menu.

Admin Link

Step 3. Click on the integrations button to setup a new API key.

Integrations

Step 4. Click on the "Create Integration" button to add a new API key.

Add Integration

Step 5.Provide a name for your API key and click Add.

Name Integration

Step 6. Make note of the newly generate API key, you will not be able to access this value again.

Copy API Key

Step 7. You are now able to use this key along with your company id in order to access the public APIs made available by SmartPM. You will pass the API key value in a header X-API-KEY along with your company ID in X-COMPANY-ID.

Note: You must be a Company Admin in order to generate an API Key.

Company ID

In order to get your Company ID to use with the API Key, please navigate to the company dashboard and note the value in the URL. Company ID

Note: In the screenshot above the Company ID is "18e19555-c5c1-4acd-9e1d-cd534287c21e"

Release Notes

Release v9.8 - 06/26/2025

  • Adding relationships endpoint

Release v8.1 - 10/11/2024

Adding schedule quality details API

Adding API to get specific activity codes

Updating documentation for scenario metrics API with new cost / manpower metrics

Updating documentation for activities API with cost / manpower metric

Release v7.9 - 9/13/2024

Adding project delete endpoint

Release v7.8 - 8/31/2024

Adding sourceEndDate to Schedules v2 endpoint

Adding disableNotification to Create Users endpoint

Adding Get Project Health endpoint

Adding Get Project Health Trend endpoint

Add Get Schedule Compression Trend endpoint

Add Get Schedule Performance Index endpoint

Add Get Schedule Performance Index Trend endpoint

Add Get Project Calendars endpoint

Add Get Specific Project Calendar endpoint

Add Get Project WBS endpoint

Add Get Project WBS element endpoint

Add Get Project Activity Code Types endpoint

Project

A project represents a set of schedules that have been imported into SmartPM to be analyzed.

Get active projects

Get all active projects for your company

Filters

  • Optional parameter to filter projects based on metadata field values in the format of

    fieldName:value
  • Numeric and Date metadata fields can have operators such as [eq], [lt], [lte], [gt], [gte]

Example:

  • filters=REGION:United+States,REGION:Canada,RANK[gt]:3,RANK[lte]:5
query Parameters
filters
string

Filters based on Project Metadata

asOf
string <date-time> /\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d...
Example: asOf=2023-07-19T12:00:00

Return projects that have changed since date

header Parameters
X-API-KEY
required
string

Your API KEY

X-COMPANY-ID
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create project

Create a new project in SmartPM

header Parameters
X-API-KEY
required
string

Your API Key

X-COMPANY-ID
required
string
Request Body schema: application/json
name
required
string
city
required
string
state
required
string
zipCode
required
string
country
required
string
latitude
required
number
longitude
required
number
required
Array of objects

The files that you have uploaded to SmartPM that you want imported to the project. Note: Currently only 1 file is supported.

source
required
string
Enum: "XER" "MPP" "PMXML" "PPX" "PP"
projectPlan
string
Enum: "Dashboard" "Oversight" "Controls"

The plan that you would like for the project to be in, if a value is not supplied then the company default is used.

object

A object representing the key value pairs for the metadata

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "city": "string",
  • "state": "string",
  • "zipCode": "string",
  • "country": "string",
  • "latitude": 0,
  • "longitude": 0,
  • "files": [
    ],
  • "source": "XER",
  • "projectPlan": "Dashboard",
  • "metadata": {
    }
}

Response samples

Content type
application/json
{
  • "projectId": 0,
  • "message": "string",
  • "files": [
    ]
}

Get Project

Get a specific project

path Parameters
projectId
required
string
projectId
required
string
header Parameters
X-API-KEY
string

Your API KEY

X-COMPANY-ID
string

Your Company ID

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "name": "string",
  • "startDate": "string",
  • "country": "string",
  • "city": "string",
  • "state": "string",
  • "zipcode": "string",
  • "latitude": 0,
  • "longitude": 0,
  • "originalScenarioId": 0,
  • "defaultScenarioId": 0,
  • "underConstruction": true,
  • "projectPlanId": "string",
  • "projectPlanSlotCount": 0,
  • "weatherStationId": null,
  • "metadata": { },
  • "companyId": "string",
  • "source": "string",
  • "dataDate": "string"
}

Delete Project

Delete a project

path Parameters
projectId
required
string
projectId
required
string
header Parameters
X-API-KEY
string

Your API Key

X-COMPANY-ID
string

Your Company ID

Responses

Update project metadata

Update project metadata field values

path Parameters
projectId
required
string

The project to update

header Parameters
X-API-KEY
required
string
X-COMPANY-ID
required
string
Request Body schema: application/json

Project metadata fields and values to update

API_KEY
string

Responses

Request samples

Content type
application/json
{
  • "FIELD1": "value1",
  • "FIELD2": "value2",
  • "FIELD3": "value3"
}

Response samples

Content type
application/json
{
  • "FIELD1": "value1",
  • "FIELD2": "value2",
  • "FIELD3": "value3"
}

Get Project Comments

path Parameters
projectId
required
number
header Parameters
X-API-KEY
string
X-COMPANY-ID
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create Project Comment

Notes Endpoint

path Parameters
projectId
required
number
header Parameters
X-API-KEY
string
X-COMPANY-ID
string
Request Body schema: application/json
notes
string

Responses

Request samples

Content type
application/json
{
  • "notes": "string"
}

Response samples

Content type
application/json
[
  • {
    }
]

Get Project Calendars

Get all of the project calendars

path Parameters
projectId
required
string
header Parameters
X-API-KEY
string

Your API Key

X-COMPANY-ID
string

Your Company ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get Project Calendar

Get a specific project calendar

path Parameters
projectId
required
string
calendarId
required
string
header Parameters
X-API-KEY
string

Your API Key

X-COMPANY-ID
string

Your Company ID

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "baseCalendarId": null,
  • "name": "string",
  • "hoursPerDay": 0,
  • "hoursPerMonth": 0,
  • "hoursPerWeek": 0,
  • "hoursPerYear": 0,
  • "worktimeList": [
    ]
}

Get Project Work Breakdown Structure

Get the work breakdown structure (WBS) for a project

path Parameters
projectId
required
string
header Parameters
X-API-KEY
string

Your API Key

X-COMPANY-ID
string

Your Company ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get Project Activity Code Types

Get the activity code types for a project

path Parameters
projectId
required
string
header Parameters
X-API-KEY
string

Your API Key

X-COMPANY-ID
string

Your Company ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get Specific Project Activity Code Type

Get specific activity code for a project

path Parameters
projectId
required
string
activityCodeTypeId
required
string
activityCodeId
required
string
header Parameters
X-API-KEY
string

Your API Key

X-COMPANY-ID
string

Your Company ID

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "parent": null,
  • "value": "string",
  • "desc": "string",
  • "sequenceNumber": 0,
  • "order": 0,
  • "children": [
    ]
}

Get Specific Project Activity Code Type

Get specific activity code type for a project

path Parameters
projectId
required
string
activityCodeTypeId
required
string
header Parameters
X-API-KEY
string

Your API Key

X-COMPANY-ID
string

Your Company ID

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "externalProjectId": 0,
  • "sequenceNumber": 0,
  • "secureCode": true,
  • "length": 0,
  • "name": "string",
  • "scope": "string",
  • "epsId": 0,
  • "epsNumber": 0,
  • "activityCodes": [
    ]
}

Get Project Work Breakdown Structure Element

Get a specific work breakdown structure element (WBS) for a project

path Parameters
projectId
required
string
wbsId
required
string
header Parameters
X-API-KEY
string

Your API Key

X-COMPANY-ID
string

Your Company ID

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "parentWBSId": null,
  • "sequenceNumber": 0,
  • "code": "string",
  • "name": "string"
}

Scenario

A scenario represents an analysis that has been done on a set of schedules with zero or more rules applied.

Get scenarios for project

Get all active scenarios for the specified project

path Parameters
projectId
required
number

The ID of the project for which you want to retrieve scenarios

query Parameters
asOf
string <date-time> /\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d...
Example: asOf=2023-07-19T12:00:00

Return scenarios that have changed since date

header Parameters
X-API-KEY
required
string

Your API KEY

X-COMPANY-ID
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get scenario details

Get the details for a scenario

path Parameters
projectId
required
number

The ID of the project containing the scenario for which you want to retrieve details

scenarioId
required
number

The ID of the scenario for which you want to retrieve details

query Parameters
dataDate
stringyyyy-MM-dd

Data date for which you want to retrieve the scenario details for, if blank will use the latest data date

header Parameters
X-API-KEY
required
string

Your API KEY

X-COMPANY-ID
required
string

Responses

Response samples

Content type
application/json
{
  • "dataDate": "string",
  • "name": "string",
  • "description": null,
  • "scenarioType": "string",
  • "activityId": null,
  • "plannedPercentComplete": 0,
  • "actualPercentComplete": 0,
  • "forecastedCompletion": null,
  • "scheduledCompletion": "string",
  • "scheduleCompression": 0,
  • "scheduleQualityGrade": "string",
  • "criticalPathDelay": 0,
  • "endDateVariance": 0,
  • "futureRecovery": 0,
  • "health": 0,
  • "schedulePerformanceIndex": 0,
  • "baselineEndDate": "string",
  • "contractualEndDate": null,
  • "plannedManpower": 0,
  • "earnedManpower": 0,
  • "remainingManpower": 0,
  • "actualManpower": 0,
  • "currentEstimatedManpower": 0,
  • "plannedBudget": 0,
  • "remainingBudget": 0,
  • "earnedCost": 0,
  • "manpowerPlannedPercentComplete": 0,
  • "manpowerActualPercentComplete": 0,
  • "manpowerPerformanceIndex": 0,
  • "costPlannedPercentComplete": 0,
  • "costActualPercentComplete": 0,
  • "costPerformanceIndex": 0,
  • "resourceCount": 0,
  • "averageDurationVariance": 0
}

Get Percent Complete Curve

Generates the percent complete curve with all relevant data points. The dates for which data is returned is as follows.

  • Monthly from baseline start date till first data date
  • Each Data Date
  • Last Data Date to maximum completion date
path Parameters
projectId
required
string
scenarioId
required
string
header Parameters
X-API-KEY
string
X-COMPANY-ID
string

Responses

Response samples

Content type
application/json
{
  • "percentCompleteTypes": {
    },
  • "data": {
    }
}

Get Percent Complete Curve (v2)

Generates the percent complete curve with all relevant data points. The dates for which data is returned is as follows.

  • Monthly from baseline start date till first data date
  • Each Data Date
  • Last Data Date to maximum completion date
path Parameters
projectId
required
string
scenarioId
required
string
query Parameters
delta
boolean

Returns the change of progress between periods in place of progress.

header Parameters
X-API-KEY
string
X-COMPANY-ID
string

Responses

Response samples

Content type
application/json
{
  • "percentCompleteTypes": {
    },
  • "data": [
    ]
}

Get Earned Schedule Curve

Generates the earned schedule curve with all relevant data points. The dates for which data is returned is as follows.

  • Monthly from baseline start date till first data date
  • Each Data Date
  • Last Data Date to maximum completion date
path Parameters
projectId
required
string
scenarioId
required
string
header Parameters
X-API-KEY
string
X-COMPANY-ID
string

Responses

Response samples

Content type
{
  • "data": [
    ]
}

Get Schedule Compression

Retrieve the schedule compression for a particular schedule

path Parameters
projectId
required
string

The Project ID containing the scenario for which you would like to pull the schedule quality for

scenarioId
required
string

The Scenario ID for which you would like to pull the schedule quality for

query Parameters
dataDate
string <date>

The schedule data date you would like to retrieve schedule compression for.

header Parameters
X-API-KEY
string

Your API KEY

X-COMPANY-ID
string

Your Company ID

Responses

Response samples

Content type
application/json
{
  • "dataDate": "string",
  • "scheduleCompression": 0,
  • "scheduleCompressionIndex": 0,
  • "indicator": "GOOD"
}

Get Project Health

Retrieve the project health for a particular schedule

path Parameters
projectId
required
string

The Project ID containing the scenario for which you would like to pull the schedule quality for

scenarioId
required
string

The Scenario ID for which you would like to pull the schedule quality for

query Parameters
dataDate
string <date>

The schedule data date you would like to retrieve schedule compression for.

header Parameters
X-API-KEY
string

Your API KEY

X-COMPANY-ID
string

Your Company ID

Responses

Response samples

Content type
application/json
{
  • "dataDate": "string",
  • "health": 0,
  • "risk": "GOOD"
}

Get Project Health Trend

Retrieve the project health trend for a particular scenario

path Parameters
projectId
required
string

The Project ID containing the scenario for which you would like to pull the schedule quality for

scenarioId
required
string

The Scenario ID for which you would like to pull the schedule quality for

query Parameters
dataDate
string <date>

The schedule data date you would like to retrieve schedule compression for.

header Parameters
X-API-KEY
string

Your API KEY

X-COMPANY-ID
string

Your Company ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get Schedule Compression Trend

Retrieve the schedule compression trend for a particular scenario

path Parameters
projectId
required
string
scenarioId
required
string
header Parameters
X-API-KEY
string

Your API Key

X-COMPANY-ID
string

Your Company ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get Schedule Performance Index (SPI)

Retrieve the schedule performance index for a specific schedule

path Parameters
projectId
required
string
scenarioId
required
string
query Parameters
dataDate
string <date-time>

The schedule data date you would like to retrieve schedule performance index for.

header Parameters
X-API-KEY
string

Your API Key

X-COMPANY-ID
string

Your Company ID

Responses

Response samples

Content type
application/json
{
  • "dataDate": "string",
  • "spi": 0
}

Get Schedule Performance Index Trend

Get the schedule performance index trend for a scenario

path Parameters
projectId
required
string
scenarioId
required
string
header Parameters
X-API-KEY
string

Your API Key

X-COMPANY-ID
string

Your Company ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Activity

A activity represents a work item from a schedule.

Get activities for a scenario

Get all of the activities for the scenario on the specified data date

path Parameters
projectId
required
number

The ID of the project for which you want to retrieve activities

scenarioId
required
number

The ID of the scenario for which you want to retrieve activities

query Parameters
dataDate
stringyyyy-MM-dd

Data date for which you want to retrieve the activities, if blank will use the latest data date

filterId
number

The ID for the filter that you want to filter the list of activities by

header Parameters
X-API-KEY
required
string

Your API KEY

X-COMPANY-ID
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get relationships for a scenario

Get all of the relationships for the scenario on the specified data date

path Parameters
projectId
required
number

The ID of the project for which you want to retrieve activities

scenarioId
required
number

The ID of the scenario for which you want to retrieve activities

query Parameters
dataDate
stringyyyy-MM-dd

Data date for which you want to retrieve the activities, if blank will use the latest data date

header Parameters
X-API-KEY
required
string

Your API KEY

X-COMPANY-ID
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Import

Import file

Import file to existing project with existing baseline. This endpoint will import the files to the originals scenario and update any scenarios marked as auto update with any valid files. A file will become invalid for a scenario if the scenario is a partial scenario and the activity no longer exists.

path Parameters
projectId
required
string

The project you would like to import the file for

header Parameters
X-API-KEY
required
string

Your API Key

X-COMPANY-ID
required
string
Request Body schema: application/json
required
Array of objects non-empty unique
sendNotification
boolean

Send a notification whenever the delay analysis has completed for all scenarios that are being updated.

Responses

Request samples

Content type
application/json
{
  • "files": [
    ],
  • "sendNotification": false
}

Response samples

Content type
application/json
{
  • "files": [
    ],
  • "importId": "3a18c632-7e3f-494d-bed1-8e4ed4ae5b4d",
  • "status": "Queued"
}

Import Status

Get the status of the import

path Parameters
projectId
required
string

The project for while you would like to check the import status for

importId
required
string

The import to check the status for

header Parameters
X-API-KEY
required
string
X-COMPANY-ID
required
string

Responses

Response samples

Content type
application/json
{
  • "message": "SUCCESS",
  • "importId": "9a338600-a239-49a4-a96b-6c55de9de51b"
}

Upload file

Upload file to be used for importing

header Parameters
X-API-KEY
required
string

Your API Key

X-COMPANY-ID
required
string
Request Body schema: multipart/form-data

Upload one file at a time as a multipart form data

files
any

Responses

Response samples

Content type
application/json
{
  • "fileId": "a1ec8eea-bee8-45eb-ba97-22c647178d86",
  • "message": null
}

User

Get Project Users

Get all users for project

path Parameters
projectId
required
string

The project to get users for

header Parameters
X-API-KEY
required
string
X-COMPANY-ID
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Add user to project

Add a user to a project

path Parameters
projectId
required
string

The project to create user for

header Parameters
X-API-KEY
required
string
X-COMPANY-ID
required
string
Request Body schema: application/json
user
required
string non-empty
role
required
string non-empty

Responses

Request samples

Content type
application/json
{
  • "user": "rsinha@smartpmtech.com",
  • "role": "Schedule Admin"
}

Response samples

Content type
application/json
{
  • "id": 1580,
  • "user": "rsinha@smartpmtech.com",
  • "role": "Schedule Admin"
}

Remove project user

path Parameters
projectId
required
string

The project to delete user for

userId
required
string

The user to delete

header Parameters
X-API-KEY
required
string
X-COMPANY-ID
required
string

Responses

Update project user role

path Parameters
projectId
required
string

The project to update user for

userId
required
string

The user to update

header Parameters
X-API-KEY
required
string
X-COMPANY-ID
required
string
Request Body schema: application/json
user
required
string non-empty
role
required
string non-empty

Responses

Request samples

Content type
application/json
{
  • "user": "rsinha@smartpmtech.com",
  • "role": "Activity Manager"
}

Response samples

Content type
application/json
{
  • "id": 1582,
  • "user": "rsinha@smartpmtech.com",
  • "role": "Activity Manager"
}

Get Company Users

Get all users in your company

header Parameters
X-API-KEY
string

Your API KEY

X-COMPANY-ID
string

Your Company ID

Request Body schema: application/json
Array ()
id
string
firstName
required
string non-empty
lastName
required
string non-empty
email
required
string non-empty
phoneNumber
string
title
string
lastLogin
required
string <date-time>

UTC Timestamp of last login.

loginCount
required
number
role
required
string non-empty

Request samples

Content type
application/json
[
  • {
    }
]

Create Company User

Create new company user

header Parameters
X-API-KEY
string
X-COMPANY-ID
string
Request Body schema: application/json
firstName
required
string non-empty
lastName
required
string non-empty
email
required
string non-empty
phoneNumber
string non-empty
role
required
string non-empty
title
required
string
ssoUser
boolean
disableNotification
boolean

This field will allow disabling notifications to the user if they are an SSO user

Responses

Request samples

Content type
application/json
{
  • "firstName": "SmartPM",
  • "lastName": "User",
  • "email": "support@smartpmtech.com",
  • "phoneNumber": "(404) 329-3000",
  • "role": "Company Admin"
}

Response samples

Content type
application/json
{
  • "id": "8b64e890-a2e6-49bb-8a62-b969c9fddd3d",
  • "firstName": "SmartPM",
  • "lastName": "User",
  • "email": "support@smartpmtech.com",
  • "phoneNumber": "(404) 329-3000",
  • "role": "Company Admin",
  • "lastLogin": "2021-02-18T21:43:18",
  • "loginCount": 19
}

Update Company User

path Parameters
userId
required
string

The ID for the User

header Parameters
X-API-KEY
string
X-COMPANY-ID
string
Request Body schema: application/json
firstName
required
string non-empty
lastName
required
string non-empty
email
required
string non-empty
phoneNumber
string non-empty
role
required
string non-empty
title
required
string non-empty
ssoUser
boolean

Responses

Request samples

Content type
application/json
{
  • "firstName": "SmartPM",
  • "lastName": "User",
  • "email": "support@smartpmtech.com",
  • "phoneNumber": "(404) 329-3000",
  • "role": "Company Admin",
  • "title": "User"
}

Response samples

Content type
application/json
{
  • "id": "8b64e890-a2e6-49bb-8a62-b969c9fddd3d",
  • "firstName": "SmartPM",
  • "lastName": "User",
  • "email": "support@smartpmtech.com",
  • "phoneNumber": "(404) 329-3000",
  • "role": "Company Admin",
  • "lastLogin": "2021-02-18T21:43:18",
  • "loginCount": 19
}

Delete Company User

path Parameters
userId
required
string

The ID for the User

header Parameters
X-API-KEY
string
X-COMPANY-ID
string

Responses

External Reference

Get External References for Project

Get the external links that are setup for a project.

path Parameters
projectId
required
string

Project ID

header Parameters
X-API-KEY
string

Your API KEY

X-COMPANY-ID
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Add External Reference for Project

Add an external link for a project.

path Parameters
projectId
required
string

Project ID

header Parameters
X-API-KEY
string

Your API KEY

X-COMPANY-ID
string
Request Body schema: application/json
provider
required
string non-empty
externalId
required
string non-empty

Responses

Request samples

Content type
application/json
{
  • "provider": "procore",
  • "externalId": "1234"
}

Response samples

Content type
application/json
[
  • {
    }
]

Schedules

Get schedules uploaded for scenario

Retrieve the schedules that have been uploaded to a scenario.

path Parameters
projectId
required
string
scenarioId
required
string
query Parameters
asOf
string <date-time> /\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d...
Example: asOf=2023-07-19T12:00:00

Return schedules that have been uploaded since date

header Parameters
X-API-KEY
string

Your API KEY

X-COMPANY-ID
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get schedules uploaded for scenario (v2)

Retrieve the schedules that have been uploaded to a scenario.

path Parameters
projectId
required
string
scenarioId
required
string
query Parameters
asOf
string <date-time> /\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d...
Example: asOf=2023-07-19T12:00:00

Return schedules that have been uploaded since date

header Parameters
X-API-KEY
string

Your API KEY

X-COMPANY-ID
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Company

Get Company Configuration

Get the configurations for a company.

header Parameters
X-API-KEY
string
X-COMPANY-ID
string

Responses

Response samples

Content type
application/json
[
  • {
    },
  • {
    }
]

Update Company Configuration

Update the setting of a company configuration.

path Parameters
configuration
required
string
header Parameters
X-API-KEY
string
X-COMPANY-ID
string
Request Body schema: application/json

Setting for the configuration.

setting
string

Responses

Request samples

Content type
application/json
{
  • "setting": "string"
}

Response samples

Content type
application/json
{
  • "configuration": "string",
  • "setting": "string",
  • "permission": "string"
}

Schedule Quality

Get Schedule Quality

Retrieve the schedule quality for a particular schedule

path Parameters
projectId
required
string

The Project ID containing the scenario for which you would like to pull the schedule quality for

scenarioId
required
string

The Scenario ID for which you would like to pull the schedule quality for

query Parameters
importLogId
number

The schedule id for which you would like to see the schedule quality for, if not specified, the latest schedule will be used. The schedule ids can be found from the schedules endpoint

qualityProfileId
string

The quality profile you would like to use, if not specified the default profile for the project will be used

header Parameters
X-API-KEY
string

Your API KEY

X-COMPANY-ID
string

Your Company ID

Responses

Response samples

Content type
application/json
{
  • "metrics": [
    ],
  • "grade": {
    },
  • "qualityProfileId": null
}

Get Schedule Quality Metric Details

Retrieve the schedule quality for a particular schedule, you can get the metric types from the schedule quality endpoint.

The metric types that you cannot receive details for are:

  • ACTIVITIES_TOTAL: You can get the full list of activities from the activities endpoint
  • AVG_ACTIVITY_TOTAL_FLOAT: There is not a list of activities to be included with this
path Parameters
projectId
required
string

The Project ID containing the scenario for which you would like to pull the schedule quality for

scenarioId
required
string

The Scenario ID for which you would like to pull the schedule quality for

metric
required
string

The metric you want to pull schedule quality data for

query Parameters
qualityProfileId
string

The quality profile you would like to use, if not specified the default profile for the project will be used

header Parameters
X-API-KEY
string

Your API KEY

X-COMPANY-ID
string

Your Company ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get All Quality Profiles

Get a specific quality profile

header Parameters
X-API-KEY
string

Your API Key

X-COMPANY-ID
string

Your Company ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get Quality Profile

Get all of the quality profiles that are available for your company

path Parameters
qualityProfileId
required
string

The quality profile you want to pull configuration for

header Parameters
X-API-KEY
string

Your API Key

X-COMPANY-ID
string

Your Company ID

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "companyId": "string",
  • "name": "string",
  • "scoreReporting": "string",
  • "qualityThreshold": [
    ],
  • "configuration": {
    }
}

Change Log

Get Change Log Summary

Retrieve summary information about the changes that have happened to a scenario over time

path Parameters
projectId
required
string
scenarioId
required
string
header Parameters
X-API-KEY
string

Your API KEY

X-COMPANY-ID
string

Your Company ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get Change Log Details

Retrieve the details for the items that are a part of the different change log summary buckets. The type that is passed in should be one of the following:

  • CriticalChanges
  • NearCriticalChanges
  • ActivityChanges
  • LogicChanges
  • DurationChanges
  • DelayedActivityChanges
  • AllCalendarChanges
  • FlaggedChanges
path Parameters
projectId
required
string

The Project ID you would like to load data for

scenarioId
required
string

The Scenario ID you would like to load data for

type
required
string
Enum: "CriticalChanges" "NearCriticalChanges" "ActivityChanges" "LogicChanges" "DurationChanges" "DelayedActivityChanges" "AllCalendarChanges" "FlaggedChanges"

The type from the change log that you would like to load details for

query Parameters
dataDate
string <date-time>

The date for which you would like to retrieve the updates for

header Parameters
X-API-KEY
string

Your API Key

X-COMPANY-ID
string

Your Company ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get All Change Log Details

Retrieve all the changes that were made

path Parameters
projectId
required
string

The Project ID you would like to load data for

scenarioId
required
string

The Scenario ID you would like to load data for

query Parameters
dataDate
string <date-time>

The date for which you would like to retrieve the updates for

header Parameters
X-API-KEY
string

Your API Key

X-COMPANY-ID
string

Your Company ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Delay

Get Delay Table

Retrieve the delay information

path Parameters
projectId
required
string

Project ID

scenarioId
required
string

Scenario ID

header Parameters
X-API-KEY
string

Your API KEY

X-COMPANY-ID
string

Your Company ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Reporting

Should Start/Finish Report

This endpoint provides the should start/finish data between the start window and finish window dates. Typically you would provide the user with the ability to pick the finish window date which would be any schedule date other than the first schedule. Once the user picks the finish window date the start window date would be the schedule prior to the selected schedule.

path Parameters
projectId
required
string

The project ID you would like to load data for

scenarioId
required
string

The scenario ID you would like to load data for

startDate
required
string

The start of the window

finishDate
required
string

The end of the window

header Parameters
X-API-KEY
string

Your API KEY

X-COMPANY-ID
string

Your Company ID

Responses

Response samples

Content type
application/json
{
  • "total": 0,
  • "startedLate": 0,
  • "finishedLate": 0,
  • "didNotStart": 0,
  • "didNotFinish": 0,
  • "totalOnTimeHitRate": 0,
  • "startedOnTimeHitRate": 0,
  • "finishedOnTimeHitRate": 0,
  • "activities": [
    ]
}

Should Start/Finish Trend

This endpoint provides the should start/finish data trend data for all schedules.

path Parameters
projectId
required
string

The project ID you would like to load data for

scenarioId
required
string

The scenario ID you would like to load data for

header Parameters
X-API-KEY
string

Your API KEY

X-COMPANY-ID
string

Your Company ID

Responses

Response samples

Content type
application/json
{
  • "hitRates": [
    ]
}

Monthly Distribution

Get the monthly distribution of activities

path Parameters
projectId
required
string

The Project ID you would like to load data for

scenarioId
required
string

The Scenario ID you would like to load data for

query Parameters
dataDate
string <date-time>

The date for which you would like to retrieve the monthly distribution for

header Parameters
X-API-KEY
string

Your API Key

X-COMPANY-ID
string

Your Company ID

Responses

Response samples

Content type
application/json
{
  • "velocityList": [
    ]
}

Company Metrics

Get Company Metrics

Get aggregated company metrics

header Parameters
X-API-KEY
required
string

Your API Key

X-COMPANY-ID
required
string

Your Company ID

Responses

Response samples

Content type
application/json
{
  • "projectCount": 10,
  • "delayedProjectCount": 5,
  • "onTrackProjectCount": 5,
  • "updateNeededProjectCount": 9,
  • "averageHealth": 81,
  • "averageHealthIndicator": "GOOD",
  • "averageQuality": "A+",
  • "averageQualityIndicator": "GOOD",
  • "averageCompression": 1.5,
  • "averageCompressionIndicator": "BAD",
  • "averageCompressionIndex": 35,
  • "averageSPI": 0.75,
  • "averageFinishVariance": 9,
  • "averageTotalOnTimeHitRate": 0.14
}

Model

Get Models

Get all models for a project

path Parameters
projectId
required
string
header Parameters
X-API-KEY
string

Your API Key

X-COMPANY-ID
string

Your Company ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]