Create project plan item

POST /projects/{projectId}/planItems

Manage a project's plan items, i.e. resource roles, cost or revenue items, milestones and phases.

Path parameters

  • projectId string Required

    The project's unique document ID.

application/json

Body Required

  • type string

    Determines how a plan item behaves, being tracked and/or affects budgeting. Once set, it cannot be changed.

    Values are role, cost, milestone, or phase.

  • customId string

    A custom identifier for internal reference by your system (not used by missionX).

  • startDate string(date-time)

    The start date in ISOString format. See .toISOString(). If omitted, defaults to the project's start date.

  • endDate string(date-time)

    The end date in ISOString format. See .toISOString(). If omitted, defaults to the project's end date.

  • departments array[string(ObjectId)]

    One or more departments this role is associated with. References the organization's departments, i.e. org.departments[]._id.

  • hoursNeeded number(integer)

    The total hours required for this role.

  • role string(ObjectId)

    A role associated with this plan item. References the organization's role, i.e. org.roles[]._id.

  • The title of the role. E.g. Director of Sales

Responses

  • 200 application/json

    Successful response

    Hide response attributes Show response attributes object
    • _id string(ObjectId)

      The unique document ID.

    • createdBy string(ObjectId)

      The creator's unique document ID.

    • createdAt string(date-time)

      The date the document was created in ISOString format. See .toISOString().

    • updatedAt string(date-time)

      The date the document was last updated in ISOString format. See .toISOString().

    • type string

      Determines how a plan item behaves, being tracked and/or affects budgeting. Once set, it cannot be changed.

      Values are role, cost, milestone, or phase.

    • customId string

      A custom identifier for internal reference by your system (not used by missionX).

    • startDate string(date-time)

      The start date in ISOString format. See .toISOString(). If omitted, defaults to the project's start date.

    • endDate string(date-time)

      The end date in ISOString format. See .toISOString(). If omitted, defaults to the project's end date.

    • project string(ObjectId)

      Reference to the project it belongs to.

    • departments array[string(ObjectId)]

      One or more departments this role is associated with. References the organization's departments, i.e. org.departments[]._id.

    • hoursNeeded number(integer)

      The total hours required for this role.

    • role string(ObjectId)

      A role associated with this plan item. References the organization's role, i.e. org.roles[]._id.

    • The title of the role. E.g. Director of Sales

  • 400 application/json

    Bad Request

    Hide response attributes Show response attributes object
  • 500 application/json

    Internal Server Error

    Hide response attributes Show response attributes object
POST /projects/{projectId}/planItems
curl \
 -X POST https://open.api.missionx.ai/v1/projects/{projectId}/planItems \
 -H "Content-Type: application/json" \
 -d '{"type":"role","customId":"string","startDate":"2024-05-04T09:42:00+00:00","endDate":"2024-05-04T09:42:00+00:00","departments":["string"],"hoursNeeded":42.0,"role":"string","roleTitle":"string"}'
Request examples
{
  "type": "role",
  "customId": "string",
  "startDate": "2024-05-04T09:42:00+00:00",
  "endDate": "2024-05-04T09:42:00+00:00",
  "departments": [
    "string"
  ],
  "hoursNeeded": 42.0,
  "role": "string",
  "roleTitle": "string"
}
Response examples (200)
{
  "_id": "string",
  "createdBy": "string",
  "createdAt": "2024-05-04T09:42:00+00:00",
  "updatedAt": "2024-05-04T09:42:00+00:00",
  "type": "role",
  "customId": "string",
  "startDate": "2024-05-04T09:42:00+00:00",
  "endDate": "2024-05-04T09:42:00+00:00",
  "project": "string",
  "departments": [
    "string"
  ],
  "hoursNeeded": 42.0,
  "role": "string",
  "roleTitle": "string"
}
Response examples (400)
{
  "message": "string",
  "code": "string",
  "data": {
    "key": null
  }
}
Response examples (500)
{
  "message": "string",
  "code": "string",
  "data": {
    "key": null
  }
}