List projects

GET /projects

Manage your projects.

Query parameters

  • projectStatus array[string]

    One or more project statuses to filter the results by.

  • projectCode array[string]

    One or more project codes to filter the results by.

  • department array[string]

    One or more department IDs to filter the results by. The _id value of the department is expected.

  • program array[string]

    One or more program IDs to filter the results by. The _id value of the program is expected.

  • office array[string]

    One or more office IDs to filter the results by. The _id value of the office is expected.

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

  • expand array[string]

    One or more references to expand. Note: Some of the expanded items might not reflect the full response you would get from their dedicated endpoints.

    Values are people, planItems, client, departments, or offices.

  • 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 attributes Show response attributes 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().

      • org string(ObjectId)

        The organization's unique document ID.

      • startDate string(date-time)

        The start date in ISOString format. See .toISOString().

      • endDate string(date-time)

        The end date in ISOString format. See .toISOString().

      • client string(ObjectId)

        expandable The client's (or vendor, account, etc.) unique document ID referencing the organization's client, i.e. org.clients[]._id.

      • customId string

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

      • title string

        The title of your project.

      • description string

        A description of your project.

      • projectCode string

        A custom identifier for your project.

      • projectStatus string

        The status of the project.

        Values are open, completed, or cancelled. Default value is open.

      • departments array[string(ObjectId)]

        References the organization's departments, i.e. org.departments[]._id.

      • offices array[string(ObjectId)]

        References the organization's offices, i.e. org.offices[]._id.

      • revenueType string

        The project's billing scope.

        Values are milestones or timeAndMaterials.

      • budget number(float)

        The total project budget.

        Minimum value is 0.

      • timeTrackingEnabled boolean

        If true, time tracking features will be enabled for this project.

        Default value is false.

      • currency string(currency)

        The project's default currency in ISO 4217 format. E.g. EUR, CAD, USD, etc. If not provided, inherits from the organization.

      • inviteDomains array[string]

        Restricts invites to the project only to these email domains, e.g. ['missionx.ai']. If not provided, defaults to a single value of ['ANY'] where any email domain can be invited to the project.

      • projectType string

        Determines the type of project. Cannot be changed later.

        Values are smart-simple, modern-kanban, mx-gantt, or structured-agile.

      • usageStorage number

        The project's total file storage usage in bytes.

        Default value is 0.

      • planItems array[string(ObjectId)]

        The project's list of plan items.

      • customProperties array[object]

        Display custom properties on the project's information page that are not supported by missionX out of the box.

        Hide customProperties attributes Show customProperties attributes object
        • name string

          The custom property name.

        • value

          The custom property value. It can be of any type.

        • canView string

          The minimum role that is allowed to view this property. E.g. If set to manager, both a manager and an admin can view it, but not a member.

          Values are member, manager, or admin.

        • description string

          Optional additional information about this property.

GET /projects
curl \
 --request GET 'https://open.api.missionx.ai/v2/projects' \
 --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",
      "org": "string",
      "startDate": "2025-05-04T09:42:00Z",
      "endDate": "2025-05-04T09:42:00Z",
      "client": "string",
      "customId": "string",
      "title": "string",
      "description": "string",
      "projectCode": "string",
      "projectStatus": "open",
      "departments": [
        "string"
      ],
      "offices": [
        "string"
      ],
      "revenueType": "milestones",
      "budget": 42.0,
      "timeTrackingEnabled": false,
      "currency": "string",
      "inviteDomains": [
        "string"
      ],
      "projectType": "smart-simple",
      "usageStorage": 0,
      "planItems": [
        "string"
      ],
      "customProperties": [
        {
          "name": "string",
          "canView": "member",
          "description": "string"
        }
      ]
    }
  ],
  "nextLink": "string"
}