Project resources

A project resource is an assignment of an employee to a project, including associated billing rates.

List project resources

get/objects/projects/project-resource

Returns up to 100 project resources from the collection with a key, ID, and link for each resource. This operation is mostly for use in testing; use the query service to find project resources that meet certain criteria and specify the properties that are returned.

Permissions and other requirements
SubscriptionProjects
User typeBusiness user with admin privileges, Project Manager
PermissionsProject resource: List, View
SecurityOAuth2
Responses
200

OK

400

Bad Request

Request samples
Response samples
application/json
{
  • "ia::result": [
    • {
      • "key": "12345",
      • "id": "12345",
      • "href": "/objects/projects/project-resource/12345"
      },
    • {
      • "key": "85",
      • "id": "EXP-00002",
      • "href": "/objects/projects/employee-expense/85"
      },
    • {
      • "key": "60",
      • "id": "EXP-00003",
      • "href": "/objects/projects/employee-expense/60"
      }
    ],
  • "ia::meta": {
    • "totalCount": 3,
    • "start": 1,
    • "pageSize": 5,
    • "next": 0,
    • "previous": 0
    }
}

Create a project resource

post/objects/projects/project-resource

Creates a new project resource.

Permissions and other requirements
SubscriptionProjects
User typeBusiness user with admin privileges, Project Manager
PermissionsProject resources: Add
SecurityOAuth2
Request
Request Body schema: application/json
required
required
object

The project to which this resource is assigned.

key
string

Project key.

Example: "23"
id
string

Project ID.

Example: "P-0045"
description
string or null

Description of the project resource.

Example: "Hourly resource"
startDate
string or null <date>

Start date of the resource on the project.

Example: "2025-04-01"
object

Reference to the employee resource assigned to the project.

key
string or null

Employee key.

Example: "244"
id
string or null

Employee ID.

Example: "jsmith"
object

Reference to an item to be used for setting project-specific pricing.

  • If pricing is set for the item but no employee is specified, the pricing applies to the item regardless of the employee. For example, if Project Management services are always billed at $120.00 regardless of the employee who performs the work, you would specify the Project Management item and set 120.00 as the laborRate.

  • If an employee and item are specified together with a laborRate or expenseRate, the pricing applies to timesheet entries or expenses entered by the employee.

key
string or null

Item key.

Example: "23"
id
string or null

Item ID.

Example: "B002"
object

Pricing information for the project resource. If an itemis specified for the project resource and you the billing rate here is different from the billing rate defined for the item, this billing rate overrides the defined rate. If multiple billing rates exist for the same scheduled time for the resource, only the first rate is used. Resources without billing rates have a blank rate.

laborRate
number or null

Default pricing for time (labor), based on either billing rates or a percentage markup on the cost of the resource's time on the project.

Example: 10
expenseRate
number or null

Default pricing for the resource's expenses.

Example: 120
apPurchasingRate
number or null

Default percentage markup to use if you're invoicing your project resource for AP/PO purchases.

Example: 100
Responses
201

Created

400

Bad Request

Request samples
application/json
{
  • "description": "Hourly resource",
  • "startDate": "2025-04-01",
  • "employee": {
    • "key": "244"
    },
  • "item": {
    • "key": "23"
    },
  • "pricing": {
    • "laborRate": 100,
    • "expenseRate": 110,
    • "apPurchasingRate": 120
    },
  • "project": {
    • "key": "23"
    }
}
Response samples
application/json
{
  • "ia::result": {
    • "key": "12345",
    • "id": "12345",
    • "href": "/objects/projects/project-resource/12345"
    },
  • "ia::meta": {
    • "totalCount": 1,
    • "totalSuccess": 1,
    • "totalError": 0
    }
}

Get a project resource

get/objects/projects/project-resource/{key}

Returns detailed information for a particular project resource.

Permissions and other requirements
SubscriptionProjects
User typeBusiness user with admin privileges, Project Manager
PermissionsProject resource: List, View
SecurityOAuth2
Request
path Parameters
key
required
string

system-assigned unique key for a project resource.

Example: 23
Responses
200

OK

400

Bad Request

Request samples
Response samples
application/json
{
  • "ia::result": {
    • "id": "3",
    • "key": "3",
    • "audit": {
      • "createdDateTime": "2018-02-10T06:32:48Z",
      • "modifiedDateTime": "2018-02-10T06:32:48Z",
      • "createdByUser": {
        },
      • "createdBy": "104",
      • "modifiedByUser": {
        },
      • "modifiedBy": "104"
      },
    • "project": {
      • "key": "67",
      • "id": "100001",
      • "name": "R1_2018",
      • "href": "/objects/projects/project/67"
      },
    • "employee": {
      • "key": "1",
      • "id": "1",
      • "href": "/objects/company-config/employee/1"
      },
    • "employeeContact": {
      • "id": "Reser",
      • "key": "8",
      • "href": "/objects/company-config/contact/8"
      },
    • "item": {
      • "key": "212",
      • "id": "SUBPACKFIN",
      • "name": "Subscription Package Finance",
      • "href": "/objects/inventory-control/item/212"
      },
    • "description": null,
    • "startDate": null,
    • "pricing": {
      • "laborPricingMethod": "billingRate",
      • "laborRate": 23,
      • "expensePricingMethod": "costPlusFee",
      • "expenseRate": null,
      • "apPurchasingPricingMethod": "costPlusFee",
      • "apPurchasingRate": null
      },
    • "entity": {
      • "key": null,
      • "id": null,
      • "name": null
      },
    • "href": "/objects/projects/project-resource/3"
    },
  • "ia::meta": {
    • "totalCount": 1,
    • "totalSuccess": 1,
    • "totalError": 0
    }
}

Update a project resource

patch/objects/projects/project-resource/{key}

Updates an existing project resource by setting field values. Any fields not provided remain unchanged.

Permissions and other requirements
SubscriptionProjects
User typeBusiness user with admin privileges, Project Manager
PermissionsProject resource: Edit
SecurityOAuth2
Request
path Parameters
key
required
string

system-assigned unique key for a project resource.

Example: 23
Request Body schema: application/json
description
string or null

Description of the project resource.

Example: "Hourly resource"
startDate
string or null <date>

Start date of the resource on the project.

Example: "2025-04-01"
object

Reference to the employee resource assigned to the project.

key
string or null

Employee key.

Example: "244"
id
string or null

Employee ID.

Example: "jsmith"
object

Reference to an item to be used for setting project-specific pricing.

  • If pricing is set for the item but no employee is specified, the pricing applies to the item regardless of the employee. For example, if Project Management services are always billed at $120.00 regardless of the employee who performs the work, you would specify the Project Management item and set 120.00 as the laborRate.

  • If an employee and item are specified together with a laborRate or expenseRate, the pricing applies to timesheet entries or expenses entered by the employee.

key
string or null

Item key.

Example: "23"
id
string or null

Item ID.

Example: "B002"
object

Pricing information for the project resource. If an itemis specified for the project resource and you the billing rate here is different from the billing rate defined for the item, this billing rate overrides the defined rate. If multiple billing rates exist for the same scheduled time for the resource, only the first rate is used. Resources without billing rates have a blank rate.

laborRate
number or null

Default pricing for time (labor), based on either billing rates or a percentage markup on the cost of the resource's time on the project.

Example: 10
expenseRate
number or null

Default pricing for the resource's expenses.

Example: 120
apPurchasingRate
number or null

Default percentage markup to use if you're invoicing your project resource for AP/PO purchases.

Example: 100
object

The project to which this resource is assigned.

key
string

Project key.

Example: "23"
id
string

Project ID.

Example: "P-0045"
Responses
200

OK

400

Bad Request

Request samples
application/json
{
  • "description": "Project resource"
}
Response samples
application/json
{
  • "ia::result": {
    • "key": "12345",
    • "id": "ID123",
    • "href": "/objects/projects/project-resource/12345"
    },
  • "ia::meta": {
    • "totalCount": 3,
    • "totalSuccess": 2,
    • "totalError": 1
    }
}

Delete a project resource

delete/objects/projects/project-resource/{key}

Deletes a project resource.

Permissions and other requirements
SubscriptionProjects
User typeBusiness user with admin privileges, Project Manager
PermissionsProject resource: Delete
SecurityOAuth2
Request
path Parameters
key
required
string

system-assigned unique key for a project resource.

Example: 23
Responses
204

No Content

400

Bad Request

Request samples
Response samples
application/json
{
  • "ia::result": {
    • "ia::error": {
      • "code": "invalidRequest",
      • "message": "A POST request requires a payload",
      • "errorId": "REST-1028",
      • "additionalInfo": {
        },
      • "supportId": "Kxi78%7EZuyXBDEGVHD2UmO1phYXDQAAAAo"
      }
    },
  • "ia::meta": {
    • "totalCount": 1,
    • "totalSuccess": 0,
    • "totalError": 1
    }
}

Query project resources

post/services/core/query

Use the query service to find project resources that meet certain criteria and to specify the properties that are returned.

SecurityOAuth2
Responses
200

OK

400

Bad Request

Request samples
Response samples
application/json
{
  • "ia::result": {
    • "ia::error": {
      • "code": "invalidRequest",
      • "message": "A POST request requires a payload",
      • "errorId": "REST-1028",
      • "additionalInfo": {
        },
      • "supportId": "Kxi78%7EZuyXBDEGVHD2UmO1phYXDQAAAAo"
      }
    },
  • "ia::meta": {
    • "totalCount": 1,
    • "totalSuccess": 0,
    • "totalError": 1
    }
}