Update project

PATCH /projects/{projectId}

Manage a specific project belonging to your organization.

Path parameters

  • projectId string Required

    The project's unique document ID.

application/json

Body Required

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

  • A description of your project.

  • A custom identifier for your project.

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

  • The project's billing scope.

    Values are milestones or timeAndMaterials.

  • budget number(float)

    The total project budget.

    Minimum value is 0.

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

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

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

    • Optional additional information about this property.

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().

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

    • A description of your project.

    • A custom identifier for your project.

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

    • The project's billing scope.

      Values are milestones or timeAndMaterials.

    • budget number(float)

      The total project budget.

      Minimum value is 0.

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

    • Determines the type of project. Cannot be changed later.

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

    • The project's total file storage usage in bytes.

      Default value is 0.

    • planItems array[string(ObjectId)]

      expandable The unique document IDs of the project's 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.

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

      • Optional additional information about this property.

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

PATCH /projects/{projectId}
curl \
 -X PATCH https://open.api.missionx.ai/v1/projects/{projectId} \
 -H "Content-Type: application/json" \
 -d '{"startDate":"2025-05-04T09:42:00+00:00","endDate":"2025-05-04T09:42:00+00:00","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"],"customProperties":[{"name":"string","canView":"member","description":"string"}]}'
Request examples
{
  "startDate": "2025-05-04T09:42:00+00:00",
  "endDate": "2025-05-04T09:42:00+00:00",
  "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"
  ],
  "customProperties": [
    {
      "name": "string",
      "canView": "member",
      "description": "string"
    }
  ]
}
Response examples (200)
{
  "_id": "string",
  "createdBy": "string",
  "createdAt": "2025-05-04T09:42:00+00:00",
  "updatedAt": "2025-05-04T09:42:00+00:00",
  "org": "string",
  "startDate": "2025-05-04T09:42:00+00:00",
  "endDate": "2025-05-04T09:42:00+00:00",
  "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"
    }
  ]
}
Response examples (400)
{
  "message": "string",
  "code": "string",
  "data": {}
}
Response examples (500)
{
  "message": "string",
  "code": "string",
  "data": {}
}