Update project person

PATCH /projects/{projectId}/people/{personId}

Manage a project's people.

Path parameters

  • projectId string Required

    The project's unique document ID.

  • personId string Required

    The project's person unique document ID, i.e. project.people[].person.

application/json

Body Required

  • Determines the person's permissions within the project. A member can do basic work on the project, a manager has additional control over the project, like managing basic settings, project duration, people rates, etc. and an admin has full control over the project. The observer can view everything, but not change anything.

    Values are member, manager, admin, or observer.

  • role string

    Reference to an org role, i.e. org.roles[]._id

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

  • email string(email)

    The person's email in the project.

  • If true, this person can act as a project manager. A project manager can assign resources to roles, approve leave requests, etc.

    Default value is false.

  • rate number(float)

    The person's charge rate.

    Minimum value is 0.

  • rateTime string

    The person's charge rate time.

    Values are oneTime, recurring, hourly, daily, weekly, monthly, or yearly.

Responses

  • 200 application/json

    Successful response

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

      The unique document ID.

    • Determines the person's permissions within the project. A member can do basic work on the project, a manager has additional control over the project, like managing basic settings, project duration, people rates, etc. and an admin has full control over the project. The observer can view everything, but not change anything.

      Values are member, manager, admin, or observer.

    • person string

      expandable The person's unique document ID.

    • role string

      Reference to an org role, i.e. org.roles[]._id

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

    • email string(email)

      The person's email in the project.

    • If true, this person can act as a project manager. A project manager can assign resources to roles, approve leave requests, etc.

      Default value is false.

    • rate number(float)

      The person's charge rate.

      Minimum value is 0.

    • rateTime string

      The person's charge rate time.

      Values are oneTime, recurring, hourly, daily, weekly, monthly, or yearly.

    • invitePendingSince number(integer)

      The timestamp the person was invited to the project. If this field is defined, it means that the invitation is still pending.

    • praise number(integer)

      The number of praises this person has received.

      Minimum value is 0.

  • 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
PATCH /projects/{projectId}/people/{personId}
curl \
 -X PATCH https://open.api.missionx.ai/v1/projects/{projectId}/people/{personId} \
 -H "Content-Type: application/json" \
 -d '{"permission":"member","role":"string","roleTitle":"string","email":"hello@example.com","isProjectManager":false,"rate":42.0,"rateTime":"oneTime"}'
Request examples
{
  "permission": "member",
  "role": "string",
  "roleTitle": "string",
  "email": "hello@example.com",
  "isProjectManager": false,
  "rate": 42.0,
  "rateTime": "oneTime"
}
Response examples (200)
{
  "_id": "string",
  "permission": "member",
  "person": "string",
  "role": "string",
  "roleTitle": "string",
  "email": "hello@example.com",
  "isProjectManager": false,
  "rate": 42.0,
  "rateTime": "oneTime",
  "invitePendingSince": 42.0,
  "praise": 42.0
}
Response examples (400)
{
  "message": "string",
  "code": "string",
  "data": {
    "key": null
  }
}
Response examples (500)
{
  "message": "string",
  "code": "string",
  "data": {
    "key": null
  }
}