---
updatedAt: 2026-06-03T14:46:37.000Z
agentTools:
  projectIndex: https://developers.fieldwire.com/llms.txt
---

# Update the project info for a user

# OpenAPI definition

```json
{
  "openapi": "3.0.3",
  "info": {
    "title": "Fieldwire Regional API",
    "version": "v3"
  },
  "servers": [
    {
      "url": "https://client-api.{region}.fieldwire.com",
      "variables": {
        "region": {
          "default": "us",
          "enum": [
            "ca",
            "eu",
            "us"
          ]
        }
      }
    }
  ],
  "components": {
    "headers": {
      "current_user_id": {
        "description": "Current user's id",
        "schema": {
          "type": "integer"
        }
      }
    },
    "parameters": {
      "api_version": {
        "name": "Fieldwire-Version",
        "in": "header",
        "description": "Specifies the version of the API to talk to",
        "required": true,
        "schema": {
          "type": "string",
          "format": "date"
        }
      },
      "id": {
        "name": "id",
        "in": "path",
        "description": "ID of the entity",
        "required": true,
        "schema": {
          "type": "string",
          "format": "uuid"
        }
      },
      "project_id": {
        "name": "project_id",
        "in": "path",
        "description": "ID of the project this entity belongs to",
        "required": true,
        "schema": {
          "type": "string",
          "format": "uuid"
        }
      }
    },
    "schemas": {
      "account_project_user_update_input": {
        "type": "object",
        "description": "Input for updating project info for a user",
        "nullable": false,
        "properties": {
          "user": {
            "type": "object",
            "nullable": false,
            "description": "Project information about the user that needs to be updated",
            "properties": {
              "is_approved": {
                "type": "boolean",
                "nullable": false,
                "description": "If this user is approved to be a part of the project"
              },
              "role": {
                "type": "string",
                "enum": [
                  "admin",
                  "member",
                  "follower"
                ],
                "nullable": false,
                "description": "Role this user holds in this project"
              }
            },
            "additionalProperties": false
          }
        },
        "additionalProperties": false
      },
      "user_with_project": {
        "type": "object",
        "description": "General along with some project related information of a user",
        "required": [
          "id",
          "is_email_deliverable",
          "email",
          "first_name",
          "language",
          "last_name",
          "sync_scheme",
          "created_at",
          "updated_at"
        ],
        "nullable": false,
        "additionalProperties": true,
        "properties": {
          "id": {
            "$ref": "#/components/schemas/user_id"
          },
          "account_id": {
            "type": "integer",
            "format": "int32",
            "nullable": true,
            "description": "ID of the account this user belongs to"
          },
          "invited_by_id": {
            "type": "integer",
            "format": "int32",
            "nullable": true,
            "description": "ID of the user who invited this user to the platform"
          },
          "is_email_deliverable": {
            "type": "boolean",
            "nullable": false,
            "description": "If email can be delivered to this user"
          },
          "company": {
            "type": "string",
            "nullable": true,
            "description": "Name of the company this user belongs to"
          },
          "company_type": {
            "type": "string",
            "nullable": true,
            "enum": [
              "ARCHITECT_SLASH_DESIGNER",
              "GENERAL_CONTRACTOR",
              "OWNER",
              "SPECIALTY_CONTRACTOR",
              "OTHER",
              null
            ],
            "description": "Type of the company this user belongs to"
          },
          "email": {
            "type": "string",
            "nullable": false,
            "description": "Email of this user"
          },
          "first_name": {
            "type": "string",
            "nullable": false,
            "description": "First name of this user"
          },
          "job_title": {
            "type": "string",
            "nullable": true,
            "description": "Title this user holds at their job"
          },
          "language": {
            "type": "string",
            "nullable": false,
            "description": "Preferred language of this user"
          },
          "last_name": {
            "type": "string",
            "nullable": false,
            "description": "Last name of this user"
          },
          "phone_number": {
            "type": "string",
            "nullable": true,
            "description": "Phone number of this user"
          },
          "photo_url": {
            "type": "string",
            "nullable": true,
            "description": "URL where the profile picture of this user lives"
          },
          "email_notifications": {
            "type": "string",
            "enum": [
              "never",
              "daily",
              "instantly",
              null
            ],
            "nullable": true,
            "description": "Email notification preference of this user for delivering task updates"
          },
          "sync_scheme": {
            "type": "string",
            "enum": [
              "smart_cellular",
              "full_cellular"
            ],
            "nullable": false,
            "description": "Synchronization scheme of this user used by the mobile apps"
          },
          "email_addresses": {
            "type": "array",
            "deprecated": true,
            "nullable": false,
            "description": "Deprecated. Use the \"email\" property instead",
            "items": {
              "type": "object",
              "nullable": false,
              "description": "Email associated with the user account"
            }
          },
          "is_confirmed": {
            "type": "boolean",
            "nullable": false,
            "description": "Whether the user has accepted the invitation if there was one"
          },
          "created_at": {
            "type": "string",
            "format": "date-time",
            "nullable": false,
            "description": "Time when the server created this user"
          },
          "current_sign_in_at": {
            "type": "string",
            "format": "date-time",
            "nullable": true,
            "description": "Last time the user was seen online"
          },
          "in_app_purchase_end_at": {
            "type": "string",
            "format": "date-time",
            "nullable": true,
            "description": "When the in app purchase this user made ends"
          },
          "updated_at": {
            "type": "string",
            "format": "date-time",
            "nullable": false,
            "description": "Time when the server last updated this user"
          },
          "trade_type": {
            "type": "string",
            "nullable": true,
            "enum": [
              "CONCRETE",
              "EARTHWORK",
              "ELECTRICAL",
              "FIRE_SUPPRESSION",
              "FRAMING_AND_OR_DRYWALL",
              "HVAC",
              "LOW_VOLTAGE",
              "MECHANICAL",
              "PLUMBING",
              "UTILITIES",
              "OTHER",
              null
            ],
            "description": "Type of the trade this user's company belongs to"
          },
          "is_approved": {
            "type": "boolean",
            "nullable": true,
            "description": "If this user is approved to be a part of the project"
          },
          "project_id": {
            "type": "string",
            "format": "uuid",
            "nullable": false,
            "description": "ID of the project this user belongs to"
          },
          "is_admin": {
            "type": "boolean",
            "nullable": true,
            "description": "If this user is an admin in this project"
          },
          "user_deleted_at": {
            "type": "string",
            "format": "date-time",
            "nullable": true,
            "description": "Time when this user was deleted from this project"
          },
          "user_blocked_at": {
            "type": "string",
            "format": "date-time",
            "nullable": true,
            "deprecated": true,
            "description": "Deprected: Time when this user was blocked from accessing this project"
          },
          "role": {
            "type": "string",
            "enum": [
              "admin",
              "member",
              "follower",
              null
            ],
            "nullable": true,
            "description": "Role this user holds in this project"
          }
        }
      },
      "user_id": {
        "type": "integer",
        "format": "int32",
        "description": "ID of user",
        "nullable": false
      }
    },
    "securitySchemes": {
      "jwt": {
        "type": "http",
        "scheme": "bearer",
        "bearerFormat": "JWT",
        "description": "Access token (JWT) generated using the acquired refresh token (API token). Our [authentication](https://developers.fieldwire.com/docs/authentication) guide covers the steps to generate a valid token"
      }
    }
  },
  "paths": {
    "/api/v3/account/projects/{project_id}/users/{id}": {
      "patch": {
        "summary": "Update the project info for a user",
        "operationId": "update_project_info_for_user",
        "tags": [
          "account projects users"
        ],
        "security": [
          {
            "jwt": []
          }
        ],
        "parameters": [
          {
            "$ref": "#/components/parameters/project_id"
          },
          {
            "$ref": "#/components/parameters/id"
          },
          {
            "$ref": "#/components/parameters/api_version"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "headers": {
              "X-Current-User-Id": {
                "$ref": "#/components/headers/current_user_id"
              }
            },
            "content": {
              "application/json": {
                "example": {
                  "created_at": "2026-10-02T14:47:50.651Z",
                  "updated_at": "2026-10-02T14:47:50.654Z",
                  "email_addresses": [
                    {
                      "email": "d2297ff4-e8c4-40ec-9c0b-74ac23d4f110@factory.com",
                      "is_primary": true
                    }
                  ],
                  "id": 357,
                  "account_id": 178,
                  "company": "Company",
                  "company_type": null,
                  "email": "d2297ff4-e8c4-40ec-9c0b-74ac23d4f110@factory.com",
                  "email_notifications": "instantly",
                  "first_name": "John",
                  "invited_by_id": null,
                  "is_confirmed": true,
                  "is_email_deliverable": true,
                  "job_title": null,
                  "language": "en",
                  "last_name": "Doe",
                  "phone_number": null,
                  "photo_url": null,
                  "trade_type": null,
                  "sync_scheme": "smart_cellular",
                  "is_admin": false,
                  "is_approved": true,
                  "user_blocked_at": null,
                  "user_deleted_at": null,
                  "role": "member",
                  "pm_role": null,
                  "pm_group_id": null,
                  "project_id": "ed413b44-63c0-4231-80b8-cc267d97ca11",
                  "current_sign_in_at": "2026-10-02T14:47:50.650Z",
                  "in_app_purchase_end_at": null
                },
                "schema": {
                  "$ref": "#/components/schemas/user_with_project"
                }
              }
            }
          }
        },
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/account_project_user_update_input"
              }
            }
          },
          "required": true
        }
      }
    }
  }
}
```