List project plan items

GET /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.

Query parameters

  • person array[string]

    One or more person IDs to filter the results by. This is the people[].person._id value.

  • department array[string]

    One or more department IDs to filter the results by. This is the org.departments[]._id value.

  • role array[string]

    One or more role IDs to filter the results by. This is the org.roles[]._id value.

  • startDate string

    A start date query to filter the results by. Format is startDate=<operator> <date>, e.g. startDate=gt 2025-02-24T00:00:00.000Z. Acceptable operations are lt = lower than, lte = lower than or equal, gt = greater than, gte = greater than or equal, eq = equal. The date is in ISOString.

  • endDate string

    An end date query to filter the results by. Format is endDate=<operator> <date>, e.g. endDate=lt 2025-02-24T00:00:00.000Z. Acceptable operations are lt = lower than, lte = lower than or equal, gt = greater than, gte = greater than or equal, eq = equal. The date is in ISOString.

  • id array[string]

    One or more IDs to filter the response by. Compares against the document's _id value.

  • archived boolean | number

    If true, only archived documents will be returned. Defaults to false. If you need both archived and non-archived, use withArchived instead.

    Values are false, true, 0, or 1.

  • withArchived boolean | number

    If true, both archived and non-archived documents will be returned. Defaults to false.

    Values are false, true, 0, or 1.

  • updatedAt string

    A date query to filter the results by the last updatedAt value. Format is updatedAt=<operator> <date>, e.g. updatedAt=gt 2025-02-24T00:00:00.000Z. Acceptable operations are lt = lower than, lte = lower than or equal, gt = greater than, gte = greater than or equal, eq = equal. The date is in ISOString.

  • select array[string]

    One or more properties to be included in the response, instead of the full payload. E.g. select=endDate,projectStatus. You can also exclude fields by prefixing with a minus sign, e.g. select=-endDate,-projectStatus, but you cannot mix both.

  • sortBy string

    Optionally, the field to sort the results by. By default, results are sorted by created date. Only updatedAt is supported at this moment (Note: updatedAt equals to createdAt for documents that have never been updated).

    Value is updatedAt.

  • sortDirection string

    Optionally, the direction to sort the documents by. For ascending (oldest first) use either 1 or asc. By default sorting is descending (latest first), -1 or desc.

    Values are 1, asc, -1, or desc.

  • limit integer

    Optionally, change the default document response limit of 40.

    Minimum value is 1, maximum value is 100. Default value is 40.

Responses

  • 200 application/json

    Successful response

    Hide response attribute Show response attribute object
    • value array[object]
      Hide value attributes Show value attributes object
      • archived boolean

        Indicates whether the document has been archived.

      • _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.

      • person string

        If the planItem is of type role, this is the reference to the organization's person _id value. This is the org.people[].person value.

      • 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.

      • roleTitle string

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

  • 400 application/json

    Bad Request

    Hide response attributes Show response attributes object
    • message string

      An error message.

    • code string

      An error code to handle specific error responses.

    • data object

      Optionally, additional data to help handle the error.

      Additional properties are allowed.

  • 500 application/json

    Internal Server Error

    Hide response attributes Show response attributes object
    • message string

      An error message.

    • code string

      An error code to handle specific error responses.

    • data object

      Optionally, additional data to help handle the error.

      Additional properties are allowed.

GET /projects/{projectId}/planItems
curl \
 --request GET 'https://open.api.missionx.ai/v2/projects/{projectId}/planItems' \
 --header "Authorization: Bearer $ACCESS_TOKEN"
Response examples (200)
{
  "value": [
    {
      "archived": true,
      "_id": "string",
      "createdBy": "string",
      "createdAt": "2025-05-04T09:42:00Z",
      "updatedAt": "2025-05-04T09:42:00Z",
      "type": "role",
      "customId": "string",
      "startDate": "2025-05-04T09:42:00Z",
      "endDate": "2025-05-04T09:42:00Z",
      "project": "string",
      "person": "string",
      "departments": [
        "string"
      ],
      "hoursNeeded": 42.0,
      "role": "string",
      "roleTitle": "string"
    }
  ]
}
Response examples (400)
{
  "message": "string",
  "code": "string",
  "data": {}
}
Response examples (500)
{
  "message": "string",
  "code": "string",
  "data": {}
}