> This page is for version v1.
> For other versions, use one of these documentation indexes:
> - v2 (default): https://autodesk-poc.ferndocs.com/v2/llms.txt
> - v1: https://autodesk-poc.ferndocs.com/v1/llms.txt

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://autodesk-poc.ferndocs.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://autodesk-poc.ferndocs.com/_mcp/server.

# Update project

PATCH https://developer.api.autodesk.com/construction/admin/v1/projects/{projectId}
Content-Type: application/json

Proposed - Update the requested project. Can be used to add or remove products from a project.

**Note:** This operation is not backward compatible with BIM 360 projects. It only works with Autodesk Construction Cloud projects.

Reference: https://autodesk-poc.ferndocs.com/v1/acc-admin/projects/update-project

## Authentication

- OAuth2 — send the obtained token as `Authorization: Bearer <token>`
- `Authorization` header (bearer token, required) — **OAuth 2.0 (3-legged)** — user context required. Also accepts a Secure Service Account (SSA) token, which is headless like a two-legged flow but classified as three-legged because it preserves user context. **Authorization Code Flow** Authorization URL: [https://developer.api.autodesk.com/authentication/v2/authorize](https://developer.api.autodesk.com/authentication/v2/authorize) Token URL: [https://developer.api.autodesk.com/authentication/v2/token](https://developer.api.autodesk.com/authentication/v2/token) Refresh URL: [https://developer.api.autodesk.com/authentication/v2/token](https://developer.api.autodesk.com/authentication/v2/token) Scopes: - `data:read` — read your data - `account:read` — read account and project data - `account:write` — modify account and project data

## Request

### Path parameters

- `projectId` (string, required) — The ID of the project. This corresponds to project ID in the [Data Management API](https://aps.autodesk.com/en/docs/data/v2/). To convert a project ID in the Data Management API into a project ID in the Forma API you need to remove the "**b.**\" prefix. For example, a project ID of `b.a4be0c34a-4ab7` translates to a project ID of `a4be0c34a-4ab7`.

### Headers

- `Accept-Language` (string, optional, default: en) — This header is not currently supported in the hub Admin API.
- `Region` (string, optional) — Specifies the region where your request should be routed. If not set, the request is routed automatically, which may result in a slight increase in latency. Possible values: `US`, `EMEA`. For a complete list of supported regions, see the [Regions](https://aps.autodesk.com/en/docs/acc/v1/overview/acc-regions/) page.
- `User-Id` (string, optional) — The ID of a user on whose behalf your request is acting. Your app has access to all users specified by the administrator in the SaaS integrations UI. Provide this header value to identify the user to be affected by the request. You can use either the user's Forma ID (`id`), or their Autodesk ID (`autodeskId`). Note that this header is required for hub Admin POST, PATCH, and DELETE endpoints if you want to use a 2-legged authentication context. This header is optional for hub Admin GET endpoints.

### Body (application/json)

This endpoint expects an object.

- `id` (string, optional) — The internally generated ID for the project.
- `name` (string, optional) — The name of the project.
- `startDate` (date, optional, nullable) — The estimated start date for the project, in ISO 8601 format.
- `endDate` (date, optional, nullable) — The estimated end date for the project, in ISO 8601 format.
- `type` (string, optional) — The type of the project. Any value is accepted, but the following are recommended: Possible values: `Convention Center`, `Data Center`, `Hotel / Motel`, `Office`, `Parking Structure / Garage`, `Performing Arts`, `Restaurant`, `Retail`, `Stadium / Arena`, `Theme Park`, `Warehouse (non-manufacturing)`, `Assisted Living / Nursing Home`, `Hospital`, `Medical Laboratory`, `Medical Office`, `OutPatient Surgery Center`, `Court House`, `Dormitory`, `Education Facility`, `Government Building`, `Library`, `Military Facility`, `Museum`, `Prison / Correctional Facility`, `Recreation Building`, `Religious Building`, `Research Facility / Laboratory`, `Multi-Family Housing`, `Single-Family Housing`, `Airport`, `Bridge`, `Canal / Waterway`, `Dams / Flood Control / Reservoirs`, `Harbor / River Development`, `Rail`, `Seaport`, `Streets / Roads / Highways`, `Transportation Building`, `Tunnel`, `Waste Water / Sewers`, `Water Supply`, `Manufacturing / Factory`, `Mining Facility`, `Oil & Gas`, `Plant`, `Power Plant`, `Solar Farm`, `Utilities`, `Wind Farm`, `Demonstration Project`, `Template Project` and `Training Project`.
- `classification` (enum, optional, default: production) — The classification of the project. Possible values: - `production` – Standard project. - `template` – A project that serves as a template for creating new projects. - `component` – A placeholder project containing reusable components (e.g., forms). Only one component project is allowed per hub. Known as a library in the Forma UI. - `sample` – A single sample project automatically created for Forma trials (limited to one per hub).
  - Allowed values: `component`, `production`, `sample`, `template`
- `projectValue` (ProjectsProjectIdPatchRequestBodyContentApplicationJsonSchemaProjectValue, optional) — Contains details about the estimated cost of the project, including the amount (`value`) and the currency (`currency`).
- `status` (enum, optional, default: active) — The status of the project. Possible values: `active`, `pending`, `archived` and `suspended`.
  - Allowed values: `active`, `pending`, `archived`, `suspended`
- `jobNumber` (string, optional) — A user-defined identifier for the project. This value is assigned when the project is created and can be used to filter projects. It supports partial matches when used with `filterTextMatch`.
- `addressLine1` (string, optional, nullable) — The first line of the project’s address.
- `addressLine2` (string, optional, nullable) — Additional address details for the project location.
- `city` (string, optional, nullable) — The city wher the project is located.
- `stateOrProvince` (string, optional, nullable) — The state or province where the project is located. It must be a valid name or an ISO 3166-2 code. The provided state or province must exist in the country of the project.
- `postalCode` (string, optional, nullable) — The postal or ZIP code of the project location.
- `country` (string, optional, nullable) — The country where the project is located, using an ISO 3166-1 alpha-2 code.
- `latitude` (string, optional, nullable) — The latitude coordinate of the project location.
- `longitude` (string, optional, nullable) — The longitude coordinate of the project location.
- `timezone` (enum, optional, nullable) — The time zone where the project is located. It must be a valid IANA time zone name from the [IANA Time Zone Database](https://www.iana.org/time-zones) (e.g., `America/New_York`). If no time zone is set, this field may be `null`.
  - Allowed values: `Pacific/Honolulu`, `America/Juneau`, `America/Los_Angeles`, `America/Phoenix`, `America/Denver`, `America/Chicago`, `America/New_York`, `America/Indiana/Indianapolis`, `Pacific/Pago_Pago`, `Pacific/Midway`, `America/Tijuana`, `America/Chihuahua`, `America/Mazatlan`, `America/Guatemala`, `America/Mexico_City`, `America/Monterrey`, `America/Regina`, `America/Bogota`, `America/Lima`, `America/Caracas`, `America/Halifax`, `America/Guyana`, `America/La_Paz`, `America/Santiago`, `America/St_Johns`, `America/Sao_Paulo`, `America/Argentina/Buenos_Aires`, `America/Godthab`, `Atlantic/South_Georgia`, `Atlantic/Azores`, `Atlantic/Cape_Verde`, `Africa/Casablanca`, `Europe/Dublin`, `Europe/Lisbon`, `Europe/London`, `Africa/Monrovia`, `Etc/UTC`, `Europe/Amsterdam`, `Europe/Belgrade`, `Europe/Berlin`, `Europe/Bratislava`, `Europe/Brussels`, `Europe/Budapest`, `Europe/Copenhagen`, `Europe/Ljubljana`, `Europe/Madrid`, `Europe/Paris`, `Europe/Prague`, `Europe/Rome`, `Europe/Sarajevo`, `Europe/Skopje`, `Europe/Stockholm`, `Europe/Vienna`, `Europe/Warsaw`, `Africa/Algiers`, `Europe/Zagreb`, `Europe/Athens`, `Europe/Bucharest`, `Africa/Cairo`, `Africa/Harare`, `Europe/Helsinki`, `Europe/Istanbul`, `Asia/Jerusalem`, `Europe/Kiev`, `Africa/Johannesburg`, `Europe/Riga`, `Europe/Sofia`, `Europe/Tallinn`, `Europe/Vilnius`, `Asia/Baghdad`, `Asia/Kuwait`, `Europe/Minsk`, `Africa/Nairobi`, `Asia/Riyadh`, `Asia/Tehran`, `Asia/Muscat`, `Asia/Baku`, `Europe/Moscow`, `Asia/Tbilisi`, `Asia/Yerevan`, `Asia/Kabul`, `Asia/Karachi`, `Asia/Tashkent`, `Asia/Kolkata`, `Asia/Colombo`, `Asia/Kathmandu`, `Asia/Almaty`, `Asia/Dhaka`, `Asia/Yekaterinburg`, `Asia/Rangoon`, `Asia/Bangkok`, `Asia/Jakarta`, `Asia/Novosibirsk`, `Asia/Shanghai`, `Asia/Chongqing`, `Asia/Hong_Kong`, `Asia/Krasnoyarsk`, `Asia/Kuala_Lumpur`, `Australia/Perth`, `Asia/Singapore`, `Asia/Taipei`, `Asia/Ulaanbaatar`, `Asia/Urumqi`, `Asia/Irkutsk`, `Asia/Tokyo`, `Asia/Seoul`, `Australia/Adelaide`, `Australia/Darwin`, `Australia/Brisbane`, `Australia/Melbourne`, `Pacific/Guam`, `Australia/Hobart`, `Pacific/Port_Moresby`, `Australia/Sydney`, `Asia/Yakutsk`, `Pacific/Noumea`, `Asia/Vladivostok`, `Pacific/Auckland`, `Pacific/Fiji`, `Asia/Kamchatka`, `Asia/Magadan`, `Pacific/Majuro`, `Pacific/Guadalcanal`, `Pacific/Tongatapu`, `Pacific/Apia`, `Pacific/Fakaofo`
- `constructionType` (string, optional) — The type of construction for the project. Recommended values: `New Construction`, `Renovation`. Any value is accepted.
- `deliveryMethod` (string, optional) — The method used to deliver the project. Recommended values include `Design-Bid-Build`, `Construction Management (CM) at Risk`, and `Integrated Project Delivery (IPD)`. Any value is accepted.
- `contractType` (string, optional) — The type of contract for the project. For example, `Lump Sum`, `Cost Plus`, `Guaranteed Maximum Price`, `Unit Price`. Any value is accepted.
- `currentPhase` (string, optional) — The current phase of the project. Recommended values include, `Concept`, `Design`, `Bidding`, `Planning`, `Preconstruction`, `Construction`, `Commissioning`, `Warranty`, `Complete`, `Facility Management`, `Operation`, `Strategic Definition`, `Preparation and Brief`, `Concept Design`, `Developed Design`, `Technical Design`, `Construction`, `Handover and Close Out` and `In Use`. Any value is accepted.
- `imageUrl` (string, optional) — The URL of the main image associated with the project. This field can be `null`.
- `thumbnailImageUrl` (string, optional) — The URL of the project’s thumbnail image. This field can be `null`.
- `createdAt` (datetime, optional) — The timestamp when the project was created, in ISO 8601 format. This value is set at creation and does not change.
- `updatedAt` (datetime, optional) — The timestamp when the project was last updated, in ISO 8601 format. This reflects changes to project fields but not updates to resources within the project.
- `accountId` (string, optional) — The hub ID associated with the project.
- `sheetCount` (integer, optional, nullable) — The total number of sheets associated with the project. Note that this field is relevant only in responses. It is ignored in requests.
- `platform` (enum, optional, default: acc) — The APS platform where the project is stored. Possible values: `acc`, `bim360`. Note that this field is relevant only in responses. It is ignored in requests.
  - Allowed values: `acc`, `bim360`
- `businessUnitId` (string, optional) — The ID of the business unit that the project is associated with.
- `lastSignIn` (datetime, optional) — The timestamp of the last time someone signed into the project.
- `memberGroupId` (string, optional) — Not relevant
- `adminGroupId` (string, optional) — Not relevant
- `products` (list of ProjectProductsResponseItems, optional) — An array of the product objects associated with the project. Note that this array is relevant only in responses. It is ignored in requests. When a project is created, every product in the same hub as the project is activated for the project. You can call [PATCH users/:userId](https://aps.autodesk.com/en/docs/acc/v1/reference/http/admin-projects-projectId-users-userId-PATCH/) to separately activate one or more of the returned products for each user assigned to the project.
- `companyCount` (integer, optional) — The total number of companies associated with the project. Note that this field is relevant only in responses. It is ignored in requests.
- `memberCount` (integer, optional) — The total number of members on the project. Note that this field is relevant only in responses. It is ignored in requests.
- `templateId` (string, optional) — The ID of the project that was used as a template to create this project.
- `personalWorkspaceDetails` (ProjectsProjectIdPatchRequestBodyContentApplicationJsonSchemaPersonalWorkspaceDetails, optional) — Details about the personal workspace designation. Present only on personal workspace projects; the property is absent on standard projects.
- `template` (projectTemplate, optional) — Information about a project in the current user's hub that is configured as a template from which to copy products and settings when creating a new project: - If you *include* this object in a [POST accounts/:accountId/projects](https://aps.autodesk.com/en/docs/acc/v1/reference/http/admin-accountsaccountidprojects-POST/) request, the cloned project's products and settings will match those of the template project. - If you *omit* this object from a [POST accounts/:accountId/projects](https://aps.autodesk.com/en/docs/acc/v1/reference/http/admin-accountsaccountidprojects-POST/) request, all of the current Forma hub's products are added to the cloned project and activated.

## Response

### 202

The project update has been received but not yet completed. The response includes only the fields being updated.

- `id` (string, optional) — The internally generated ID for the project.
- `name` (string, optional) — The name of the project.
- `startDate` (date, optional, nullable) — The estimated start date for the project, in ISO 8601 format.
- `endDate` (date, optional, nullable) — The estimated end date for the project, in ISO 8601 format.
- `type` (string, optional) — The type of the project. Any value is accepted, but the following are recommended: Possible values: `Convention Center`, `Data Center`, `Hotel / Motel`, `Office`, `Parking Structure / Garage`, `Performing Arts`, `Restaurant`, `Retail`, `Stadium / Arena`, `Theme Park`, `Warehouse (non-manufacturing)`, `Assisted Living / Nursing Home`, `Hospital`, `Medical Laboratory`, `Medical Office`, `OutPatient Surgery Center`, `Court House`, `Dormitory`, `Education Facility`, `Government Building`, `Library`, `Military Facility`, `Museum`, `Prison / Correctional Facility`, `Recreation Building`, `Religious Building`, `Research Facility / Laboratory`, `Multi-Family Housing`, `Single-Family Housing`, `Airport`, `Bridge`, `Canal / Waterway`, `Dams / Flood Control / Reservoirs`, `Harbor / River Development`, `Rail`, `Seaport`, `Streets / Roads / Highways`, `Transportation Building`, `Tunnel`, `Waste Water / Sewers`, `Water Supply`, `Manufacturing / Factory`, `Mining Facility`, `Oil & Gas`, `Plant`, `Power Plant`, `Solar Farm`, `Utilities`, `Wind Farm`, `Demonstration Project`, `Template Project` and `Training Project`.
- `classification` (enum, optional, default: production) — The classification of the project. Possible values: - `production` – Standard project. - `template` – A project that serves as a template for creating new projects. - `component` – A placeholder project containing reusable components (e.g., forms). Only one component project is allowed per hub. Known as a library in the Forma UI. - `sample` – A single sample project automatically created for Forma trials (limited to one per hub).
  - Allowed values: `component`, `production`, `sample`, `template`
- `projectValue` (ProjectsProjectIdPatchResponsesContentApplicationJsonSchemaProjectValue, optional) — Contains details about the estimated cost of the project, including the amount (`value`) and the currency (`currency`).
- `status` (enum, optional, default: active) — The status of the project. Possible values: `active`, `pending`, `archived` and `suspended`.
  - Allowed values: `active`, `pending`, `archived`, `suspended`
- `jobNumber` (string, optional) — A user-defined identifier for the project. This value is assigned when the project is created and can be used to filter projects. It supports partial matches when used with `filterTextMatch`.
- `addressLine1` (string, optional, nullable) — The first line of the project’s address.
- `addressLine2` (string, optional, nullable) — Additional address details for the project location.
- `city` (string, optional, nullable) — The city wher the project is located.
- `stateOrProvince` (string, optional, nullable) — The state or province where the project is located. It must be a valid name or an ISO 3166-2 code. The provided state or province must exist in the country of the project.
- `postalCode` (string, optional, nullable) — The postal or ZIP code of the project location.
- `country` (string, optional, nullable) — The country where the project is located, using an ISO 3166-1 alpha-2 code.
- `latitude` (string, optional, nullable) — The latitude coordinate of the project location.
- `longitude` (string, optional, nullable) — The longitude coordinate of the project location.
- `timezone` (enum, optional, nullable) — The time zone where the project is located. It must be a valid IANA time zone name from the [IANA Time Zone Database](https://www.iana.org/time-zones) (e.g., `America/New_York`). If no time zone is set, this field may be `null`.
  - Allowed values: `Pacific/Honolulu`, `America/Juneau`, `America/Los_Angeles`, `America/Phoenix`, `America/Denver`, `America/Chicago`, `America/New_York`, `America/Indiana/Indianapolis`, `Pacific/Pago_Pago`, `Pacific/Midway`, `America/Tijuana`, `America/Chihuahua`, `America/Mazatlan`, `America/Guatemala`, `America/Mexico_City`, `America/Monterrey`, `America/Regina`, `America/Bogota`, `America/Lima`, `America/Caracas`, `America/Halifax`, `America/Guyana`, `America/La_Paz`, `America/Santiago`, `America/St_Johns`, `America/Sao_Paulo`, `America/Argentina/Buenos_Aires`, `America/Godthab`, `Atlantic/South_Georgia`, `Atlantic/Azores`, `Atlantic/Cape_Verde`, `Africa/Casablanca`, `Europe/Dublin`, `Europe/Lisbon`, `Europe/London`, `Africa/Monrovia`, `Etc/UTC`, `Europe/Amsterdam`, `Europe/Belgrade`, `Europe/Berlin`, `Europe/Bratislava`, `Europe/Brussels`, `Europe/Budapest`, `Europe/Copenhagen`, `Europe/Ljubljana`, `Europe/Madrid`, `Europe/Paris`, `Europe/Prague`, `Europe/Rome`, `Europe/Sarajevo`, `Europe/Skopje`, `Europe/Stockholm`, `Europe/Vienna`, `Europe/Warsaw`, `Africa/Algiers`, `Europe/Zagreb`, `Europe/Athens`, `Europe/Bucharest`, `Africa/Cairo`, `Africa/Harare`, `Europe/Helsinki`, `Europe/Istanbul`, `Asia/Jerusalem`, `Europe/Kiev`, `Africa/Johannesburg`, `Europe/Riga`, `Europe/Sofia`, `Europe/Tallinn`, `Europe/Vilnius`, `Asia/Baghdad`, `Asia/Kuwait`, `Europe/Minsk`, `Africa/Nairobi`, `Asia/Riyadh`, `Asia/Tehran`, `Asia/Muscat`, `Asia/Baku`, `Europe/Moscow`, `Asia/Tbilisi`, `Asia/Yerevan`, `Asia/Kabul`, `Asia/Karachi`, `Asia/Tashkent`, `Asia/Kolkata`, `Asia/Colombo`, `Asia/Kathmandu`, `Asia/Almaty`, `Asia/Dhaka`, `Asia/Yekaterinburg`, `Asia/Rangoon`, `Asia/Bangkok`, `Asia/Jakarta`, `Asia/Novosibirsk`, `Asia/Shanghai`, `Asia/Chongqing`, `Asia/Hong_Kong`, `Asia/Krasnoyarsk`, `Asia/Kuala_Lumpur`, `Australia/Perth`, `Asia/Singapore`, `Asia/Taipei`, `Asia/Ulaanbaatar`, `Asia/Urumqi`, `Asia/Irkutsk`, `Asia/Tokyo`, `Asia/Seoul`, `Australia/Adelaide`, `Australia/Darwin`, `Australia/Brisbane`, `Australia/Melbourne`, `Pacific/Guam`, `Australia/Hobart`, `Pacific/Port_Moresby`, `Australia/Sydney`, `Asia/Yakutsk`, `Pacific/Noumea`, `Asia/Vladivostok`, `Pacific/Auckland`, `Pacific/Fiji`, `Asia/Kamchatka`, `Asia/Magadan`, `Pacific/Majuro`, `Pacific/Guadalcanal`, `Pacific/Tongatapu`, `Pacific/Apia`, `Pacific/Fakaofo`
- `constructionType` (string, optional) — The type of construction for the project. Recommended values: `New Construction`, `Renovation`. Any value is accepted.
- `deliveryMethod` (string, optional) — The method used to deliver the project. Recommended values include `Design-Bid-Build`, `Construction Management (CM) at Risk`, and `Integrated Project Delivery (IPD)`. Any value is accepted.
- `contractType` (string, optional) — The type of contract for the project. For example, `Lump Sum`, `Cost Plus`, `Guaranteed Maximum Price`, `Unit Price`. Any value is accepted.
- `currentPhase` (string, optional) — The current phase of the project. Recommended values include, `Concept`, `Design`, `Bidding`, `Planning`, `Preconstruction`, `Construction`, `Commissioning`, `Warranty`, `Complete`, `Facility Management`, `Operation`, `Strategic Definition`, `Preparation and Brief`, `Concept Design`, `Developed Design`, `Technical Design`, `Construction`, `Handover and Close Out` and `In Use`. Any value is accepted.
- `imageUrl` (string, optional) — The URL of the main image associated with the project. This field can be `null`.
- `thumbnailImageUrl` (string, optional) — The URL of the project’s thumbnail image. This field can be `null`.
- `createdAt` (datetime, optional) — The timestamp when the project was created, in ISO 8601 format. This value is set at creation and does not change.
- `updatedAt` (datetime, optional) — The timestamp when the project was last updated, in ISO 8601 format. This reflects changes to project fields but not updates to resources within the project.
- `accountId` (string, optional) — The hub ID associated with the project.
- `sheetCount` (integer, optional, nullable) — The total number of sheets associated with the project. Note that this field is relevant only in responses. It is ignored in requests.
- `platform` (enum, optional, default: acc) — The APS platform where the project is stored. Possible values: `acc`, `bim360`. Note that this field is relevant only in responses. It is ignored in requests.
  - Allowed values: `acc`, `bim360`
- `businessUnitId` (string, optional) — The ID of the business unit that the project is associated with.
- `lastSignIn` (datetime, optional) — The timestamp of the last time someone signed into the project.
- `memberGroupId` (string, optional) — Not relevant
- `adminGroupId` (string, optional) — Not relevant
- `products` (list of ProjectProductsResponseItems, optional) — An array of the product objects associated with the project. Note that this array is relevant only in responses. It is ignored in requests. When a project is created, every product in the same hub as the project is activated for the project. You can call [PATCH users/:userId](https://aps.autodesk.com/en/docs/acc/v1/reference/http/admin-projects-projectId-users-userId-PATCH/) to separately activate one or more of the returned products for each user assigned to the project.
- `companyCount` (integer, optional) — The total number of companies associated with the project. Note that this field is relevant only in responses. It is ignored in requests.
- `memberCount` (integer, optional) — The total number of members on the project. Note that this field is relevant only in responses. It is ignored in requests.
- `templateId` (string, optional) — The ID of the project that was used as a template to create this project.
- `personalWorkspaceDetails` (ProjectsProjectIdPatchResponsesContentApplicationJsonSchemaPersonalWorkspaceDetails, optional) — Details about the personal workspace designation. Present only on personal workspace projects; the property is absent on standard projects.
- `jobId` (string, optional) — Not relevant - we don't currently support this field.

## Errors

### 400 Bad Request Error

The request could not be understood by the server due to malformed syntax.

- `status` (integer, optional) — The status code for the error.
- `type` (string, optional) — HQ defined error code for the type of error.
- `title` (string, optional) — The title of the error. ex: Bad Request.
- `detail` (string, optional) — A detailed description of the error with possible suggestions for fixing them.
- `id` (string, optional) — A unique id for the request.
- `errors` (list of fieldError, optional) — List of field validation errors.

### 401 Unauthorized Error

Request has not been applied because it lacks valid authentication credentials for the target resource.

- `authenticationUrl` (string, optional) — The url used for authenticating the user.
- `status` (integer, optional) — The status code for the error.
- `type` (string, optional) — HQ defined error code for the type of error.
- `title` (string, optional) — The title of the error. ex: Bad Request.
- `detail` (string, optional) — A detailed description of the error with possible suggestions for fixing them.
- `id` (string, optional) — A unique id for the request.

### 403 Forbidden Error

The server understood the request but refuses to authorize it.

- `status` (integer, optional) — The status code for the error.
- `type` (string, optional) — HQ defined error code for the type of error.
- `title` (string, optional) — The title of the error. ex: Bad Request.
- `detail` (string, optional) — A detailed description of the error with possible suggestions for fixing them.
- `id` (string, optional) — A unique id for the request.

### 404 Not Found Error

The resource could not be found.

- `status` (integer, optional) — The status code for the error.
- `type` (string, optional) — HQ defined error code for the type of error.
- `title` (string, optional) — The title of the error. ex: Bad Request.
- `detail` (string, optional) — A detailed description of the error with possible suggestions for fixing them.
- `id` (string, optional) — A unique id for the request.

### 409 Conflict Error

The request could not be completed due to a conflict with the current state of the resource.

- `status` (integer, optional) — The status code for the error.
- `type` (string, optional) — HQ defined error code for the type of error.
- `title` (string, optional) — The title of the error. ex: Bad Request.
- `detail` (string, optional) — A detailed description of the error with possible suggestions for fixing them.
- `id` (string, optional) — A unique id for the request.
- `errors` (list of fieldError, optional) — List of field validation errors.

### 410 Gone Error

Access to the target resource is no longer available.

- `status` (integer, optional) — The status code for the error.
- `type` (string, optional) — HQ defined error code for the type of error.
- `title` (string, optional) — The title of the error. ex: Bad Request.
- `detail` (string, optional) — A detailed description of the error with possible suggestions for fixing them.
- `id` (string, optional) — A unique id for the request.

### 415 Unsupported Media Type Error

The server refuses to accept the request because the payload format is in an unsupported format.

- `status` (integer, optional) — The status code for the error.
- `type` (string, optional) — HQ defined error code for the type of error.
- `title` (string, optional) — The title of the error. ex: Bad Request.
- `detail` (string, optional) — A detailed description of the error with possible suggestions for fixing them.
- `id` (string, optional) — A unique id for the request.

### 429 Too Many Requests Error

User has sent too many requests in a given amount of time.

- `any`

### 500 Internal Server Error

An unexpected error occurred on the server.

- `status` (integer, optional) — The status code for the error.
- `type` (string, optional) — HQ defined error code for the type of error.
- `title` (string, optional) — The title of the error. ex: Bad Request.
- `detail` (string, optional) — A detailed description of the error with possible suggestions for fixing them.
- `id` (string, optional) — A unique id for the request.

### 503 Service Unavailable Error

Server is not ready to handle the request.

- `status` (integer, optional) — The status code for the error.
- `type` (string, optional) — HQ defined error code for the type of error.
- `title` (string, optional) — The title of the error. ex: Bad Request.
- `detail` (string, optional) — A detailed description of the error with possible suggestions for fixing them.
- `id` (string, optional) — A unique id for the request.

## Types

### ProjectsProjectIdPatchRequestBodyContentApplicationJsonSchemaProjectValue

Contains details about the estimated cost of the project, including the amount (`value`) and the currency (`currency`).

- `value` (float, required) — The estimated cost of the project, based on the `currency` specified in the currency field. Default: `0`.
- `currency` (enum, required, default: USD) — The currency of the project value. Default: `USD`.
  - Allowed values: `AED`, `AFN`, `ALL`, `AMD`, `ANG`, `AOA`, `ARS`, `AUD`, `AWG`, `AZN`, `BAM`, `BBD`, `BDT`, `BGN`, `BHD`, `BIF`, `BMD`, `BND`, `BOB`, `BOV`, `BRL`, `BSD`, `BTN`, `BWP`, `BYN`, `BYR`, `BZD`, `CAD`, `CDF`, `CHE`, `CHF`, `CHW`, `CLF`, `CLP`, `CNY`, `COP`, `COU`, `CRC`, `CUC`, `CUP`, `CVE`, `CZK`, `DJF`, `DKK`, `DOP`, `DZD`, `EEK`, `EGP`, `ERN`, `ETB`, `EUR`, `FJD`, `FKP`, `GBP`, `GEL`, `GHS`, `GIP`, `GMD`, `GNF`, `GTQ`, `GYD`, `HKD`, `HNL`, `HRK`, `HTG`, `HUF`, `IDR`, `ILS`, `INR`, `IQD`, `IRR`, `ISK`, `JMD`, `JOD`, `JPY`, `KES`, `KGS`, `KHR`, `KMF`, `KPW`, `KRW`, `KWD`, `KYD`, `KZT`, `LAK`, `LBP`, `LKR`, `LRD`, `LSL`, `LTL`, `LVL`, `LYD`, `MAD`, `MDL`, `MGA`, `MKD`, `MMK`, `MNT`, `MOP`, `MRU`, `MUR`, `MVR`, `MWK`, `MXN`, `MXV`, `MYR`, `MZN`, `NAD`, `NGN`, `NIO`, `NOK`, `NPR`, `NZD`, `OMR`, `PAB`, `PEN`, `PGK`, `PHP`, `PKR`, `PLN`, `PYG`, `QAR`, `RON`, `RSD`, `RUB`, `RWF`, `SAR`, `SBD`, `SCR`, `SDG`, `SEK`, `SGD`, `SHP`, `SLE`, `SLL`, `SOS`, `SRD`, `SSP`, `STN`, `SVC`, `SYP`, `SZL`, `THB`, `TJS`, `TMT`, `TND`, `TOP`, `TRL`, `TRY`, `TTD`, `TWD`, `TZS`, `UAH`, `UGX`, `USD`, `USN`, `UYI`, `UYU`, `UYW`, `UZS`, `VED`, `VES`, `VND`, `VUV`, `WST`, `XAF`, `XAG`, `XAU`, `XBA`, `XBB`, `XBC`, `XBD`, `XCD`, `XDR`, `XOF`, `XPD`, `XPF`, `XPT`, `XSU`, `XTS`, `XUA`, `XXX`, `YER`, `ZAR`, `ZMW`, `ZWL`

### ProjectProductsResponseItems

Base information about the product.

- `key` (enum, optional) — A machine-readable identifier for the product (e.g., docs, build). Each product has a unique key used throughout the API for identification, filtering, and integration logic (e.g., in query parameters like `filter[key]`). Possible values: Forma - `autoSpecs`, `build`, `cost`, `designCollaboration`, `docs`, `insight`, `modelCoordination`, `projectAdministration`, `formaBidBoard` and `takeoff`. BIM 360 - `assets`, `costManagement`, `designCollaboration`, `documentManagement`, `field`, `fieldManagement`, `glue`, `insight`, `modelCoordination`, `plan`, `projectAdministration`, `projectHome`, `projectManagement` and `quantification`. Note that this endpoint returns only Forma products. Other endpoints, such as [GET projects](https://aps.autodesk.com/en/docs/acc/v1/reference/http/admin-accountsaccountidprojects-GET/) and [GET projects/:projectId](https://aps.autodesk.com/en/docs/acc/v1/reference/http/admin-projects-projectId-GET/), may return both Forma and BIM 360 projects. In those responses, product keys may include BIM 360 values.
  - Allowed values: `assets`, `autoSpecs`, `build`, `buildingConnected`, `capitalPlanning`, `cost`, `costManagement`, `designCollaboration`, `docs`, `documentManagement`, `field`, `fieldManagement`, `financials`, `glue`, `workshopxr`, `insight`, `modelCoordination`, `plan`, `projectAdministration`, `projectHome`, `projectManagement`, `quantification`, `takeoff`, `info360Insight`, `info360Plant`, `info360Asset`, `info360Model`, `forma`, `datum`, `datcls`, `formaBidBoard`
- `icon` (string, optional) — The URL of the icon associated with the product.
- `name` (string, optional) — The name of the product.
- `language` (enum, optional, default: en) — The language for the project. Only valid for the `field` product.
  - Allowed values: `en`, `de`, `nl`, `zh`, `de-CH`
- `status` (enum, optional) — The current status of the product. Possible values: - `activating`: Product activation is in progress. - `activationFailed`: Product activation has failed. - `active`: Product activation is completed. - `deactivating`: Product deactivation is in progress. (Applicable to BIM 360 only) - `deactivationFailed`: Product deactivation has failed. (Applicable to BIM 360 only) - `inactive`: Product deactivation is completed. (Applicable to BIM 360 only) - `available`: Product is available for activation. (Applicable to BIM 360 only)
  - Allowed values: `activating`, `activationFailed`, `active`, `available`, `deactivationFailed`, `deactivating`, `inactive`

### ProjectsProjectIdPatchRequestBodyContentApplicationJsonSchemaPersonalWorkspaceDetails

Details about the personal workspace designation. Present only on personal workspace projects; the property is absent on standard projects.

- `assigneeUserId` (string, optional) — The Oxygen user ID of the user this personal workspace is assigned to.

### projectTemplate

Information about a project in the current user's hub that is configured as a template from which to copy products and settings when creating a new project: - If you *include* this object in a [POST accounts/:accountId/projects](https://aps.autodesk.com/en/docs/acc/v1/reference/http/admin-accountsaccountidprojects-POST/) request, the cloned project's products and settings will match those of the template project. - If you *omit* this object from a [POST accounts/:accountId/projects](https://aps.autodesk.com/en/docs/acc/v1/reference/http/admin-accountsaccountidprojects-POST/) request, all of the current Forma hub's products are added to the cloned project and activated.

- `projectId` (string, required) — The ID of a project template in the current Forma hub from which to clone the new project and copy products and settings. Note that you cannot create a project template from another project template, but you can base it on a production project. Set this field to the project `id` of the production project. The new project template is not completely configured for use, but it will get you started. For more information about project templates, see [Project Templates](https://help.autodesk.com/view/BUILD/ENU/?guid=Account_Admin_Project_Templates) in the Build help.
- `isSampleProjectTemplate` (boolean, optional, default: false) — Indicates whether the template project should be associated with the user's hub, or the internal Sample Project Templates hub.
- `options` (ProjectTemplateOptions, optional) — Information about what to include when cloning a project template.

### ProjectsProjectIdPatchResponsesContentApplicationJsonSchemaProjectValue

Contains details about the estimated cost of the project, including the amount (`value`) and the currency (`currency`).

- `value` (float, required) — The estimated cost of the project, based on the `currency` specified in the currency field. Default: `0`.
- `currency` (enum, required, default: USD) — The currency of the project value. Default: `USD`.
  - Allowed values: `AED`, `AFN`, `ALL`, `AMD`, `ANG`, `AOA`, `ARS`, `AUD`, `AWG`, `AZN`, `BAM`, `BBD`, `BDT`, `BGN`, `BHD`, `BIF`, `BMD`, `BND`, `BOB`, `BOV`, `BRL`, `BSD`, `BTN`, `BWP`, `BYN`, `BYR`, `BZD`, `CAD`, `CDF`, `CHE`, `CHF`, `CHW`, `CLF`, `CLP`, `CNY`, `COP`, `COU`, `CRC`, `CUC`, `CUP`, `CVE`, `CZK`, `DJF`, `DKK`, `DOP`, `DZD`, `EEK`, `EGP`, `ERN`, `ETB`, `EUR`, `FJD`, `FKP`, `GBP`, `GEL`, `GHS`, `GIP`, `GMD`, `GNF`, `GTQ`, `GYD`, `HKD`, `HNL`, `HRK`, `HTG`, `HUF`, `IDR`, `ILS`, `INR`, `IQD`, `IRR`, `ISK`, `JMD`, `JOD`, `JPY`, `KES`, `KGS`, `KHR`, `KMF`, `KPW`, `KRW`, `KWD`, `KYD`, `KZT`, `LAK`, `LBP`, `LKR`, `LRD`, `LSL`, `LTL`, `LVL`, `LYD`, `MAD`, `MDL`, `MGA`, `MKD`, `MMK`, `MNT`, `MOP`, `MRU`, `MUR`, `MVR`, `MWK`, `MXN`, `MXV`, `MYR`, `MZN`, `NAD`, `NGN`, `NIO`, `NOK`, `NPR`, `NZD`, `OMR`, `PAB`, `PEN`, `PGK`, `PHP`, `PKR`, `PLN`, `PYG`, `QAR`, `RON`, `RSD`, `RUB`, `RWF`, `SAR`, `SBD`, `SCR`, `SDG`, `SEK`, `SGD`, `SHP`, `SLE`, `SLL`, `SOS`, `SRD`, `SSP`, `STN`, `SVC`, `SYP`, `SZL`, `THB`, `TJS`, `TMT`, `TND`, `TOP`, `TRL`, `TRY`, `TTD`, `TWD`, `TZS`, `UAH`, `UGX`, `USD`, `USN`, `UYI`, `UYU`, `UYW`, `UZS`, `VED`, `VES`, `VND`, `VUV`, `WST`, `XAF`, `XAG`, `XAU`, `XBA`, `XBB`, `XBC`, `XBD`, `XCD`, `XDR`, `XOF`, `XPD`, `XPF`, `XPT`, `XSU`, `XTS`, `XUA`, `XXX`, `YER`, `ZAR`, `ZMW`, `ZWL`

### ProjectsProjectIdPatchResponsesContentApplicationJsonSchemaPersonalWorkspaceDetails

Details about the personal workspace designation. Present only on personal workspace projects; the property is absent on standard projects.

- `assigneeUserId` (string, optional) — The Oxygen user ID of the user this personal workspace is assigned to.

### fieldError

Error description for a field validation error.

- `type` (string, optional) — HQ defined error code for the type of error.
- `field` (string, optional) — Name of the field associated to the error.
- `title` (string, optional) — Title for the error.
- `detail` (string, optional) — A detailed description of the error so the user knows how to fix it.

### ProjectTemplateOptions

Information about what to include when cloning a project template.

- `field` (ProjectTemplateOptionsField, optional) — Project template options specific to classic field.

### ProjectTemplateOptionsField

Project template options specific to classic field.

- `includeCompanies` (boolean, optional) — Indicates whether to include company data when copying from the project template. - `true`: Include company data. - `false`: Exclude company data.
- `includeLocations` (boolean, optional) — Indicates whether to include location data when copying from the project template. - `true`: Include location data. - `false`: Exclude location data.

## Examples

**Request**

```json
{
  "name": "Sample Project",
  "startDate": "2010-01-01",
  "endDate": "2015-12-31",
  "type": "Hospital",
  "classification": "production",
  "projectValue": {
    "value": 1650000,
    "currency": "USD"
  },
  "jobNumber": "HP-0002",
  "addressLine1": "123 Main Street",
  "addressLine2": "Suite 2",
  "city": "San Francisco",
  "stateOrProvince": "California",
  "postalCode": "94001",
  "country": "United States",
  "timezone": "America/Los_Angeles",
  "constructionType": "New Construction",
  "deliveryMethod": "Design-Bid",
  "contractType": "Unit Price",
  "currentPhase": "Design",
  "businessUnitId": "802a4a61-3507-4d4e-8e3c-242a31cc0549",
  "products": [
    {
      "key": "projectAdministration"
    },
    {
      "key": "documentManagement"
    },
    {
      "key": "fieldManagement"
    }
  ]
}
```

**Response**

```json
{
  "id": "3e354e66-ac8b-41dd-9bc1-93fc182c25dd",
  "name": "Sample Project",
  "startDate": "2010-01-01",
  "endDate": "2015-12-31",
  "type": "Hospital",
  "classification": "production",
  "projectValue": {
    "value": 1650000,
    "currency": "USD"
  },
  "status": "active",
  "jobNumber": "HP-0002",
  "addressLine1": "123 Main Street",
  "addressLine2": "Suite 2",
  "city": "San Francisco",
  "stateOrProvince": "California",
  "postalCode": "94001",
  "country": "US",
  "latitude": "37.773972",
  "longitude": "-122.431297",
  "timezone": "America/Los_Angeles",
  "constructionType": "New Construction",
  "deliveryMethod": "Design-Bid",
  "contractType": "Unit Price",
  "currentPhase": "Design",
  "imageUrl": "https://s3.us-east-1.amazonaws.com/project_image.png",
  "thumbnailImageUrl": "https://s3.us-east-1.amazonaws.com/project_thumbnail_image.png",
  "createdAt": "2018-01-01T12:45:00.000Z",
  "updatedAt": "2019-01-01T12:45:00.000Z",
  "accountId": "d73fc742-4538-401c-8d0f-853b49b750b2",
  "sheetCount": 512,
  "platform": "acc",
  "businessUnitId": "802a4a61-3507-4d4e-8e3c-242a31cc0549",
  "lastSignIn": "2019-01-01T12:45:00.000Z",
  "memberGroupId": "3456542",
  "adminGroupId": "3456543",
  "products": [
    {
      "key": "docs",
      "icon": "https://bim360-ea-ue1-prod-storage.s3.amazonaws.com/products/docs.svg",
      "name": "Docs",
      "language": "en",
      "status": "active"
    },
    {
      "key": "designCollaboration",
      "icon": "https://bim360-ea-ue1-prod-storage.s3.amazonaws.com/products/dc.svg",
      "name": "Design Collaboration",
      "language": "en",
      "status": "activating"
    },
    {
      "key": "modelCoordination",
      "icon": "https://bim360-ea-ue1-prod-storage.s3.amazonaws.com/products/model.svg",
      "name": "Model Coordination",
      "language": "en",
      "status": "activating"
    },
    {
      "key": "takeoff",
      "icon": "https://bim360-ea-ue1-prod-storage.s3.amazonaws.com/products/quantify.svg",
      "name": "Takeoff",
      "language": "en",
      "status": "activating"
    },
    {
      "key": "autoSpecs",
      "icon": "https://bim360-ea-ue1-prod-storage.s3.amazonaws.com/tools/autospecs.svg",
      "name": "AutoSpecs",
      "language": "en",
      "status": "activating"
    },
    {
      "key": "build",
      "icon": "https://bim360-ea-ue1-prod-storage.s3.amazonaws.com/products/build.svg",
      "name": "Build",
      "language": "en",
      "status": "activating"
    },
    {
      "key": "cost",
      "icon": "https://bim360-ea-ue1-prod-storage.s3.amazonaws.com/products/cost.svg",
      "name": "Cost Management",
      "language": "en",
      "status": "activating"
    },
    {
      "key": "insight",
      "icon": "https://bim360-ea-ue1-prod-storage.s3.amazonaws.com/products/insight.svg",
      "name": "Insight",
      "language": "en",
      "status": "activating"
    },
    {
      "key": "projectAdministration",
      "icon": "https://bim360-ea-ue1-prod-storage.s3.amazonaws.com/tools/settings.svg",
      "name": "Project Admin",
      "language": "en",
      "status": "activating"
    },
    {
      "key": "assets",
      "icon": "https://bim360-ea-ue1-prod-storage.s3.amazonaws.com/tools/settings.svg",
      "name": "Account Admin",
      "language": "en",
      "status": "activating"
    }
  ],
  "companyCount": 10,
  "memberCount": 100,
  "templateId": "string",
  "personalWorkspaceDetails": {
    "assigneeUserId": "BVTJZEKHKAGQTGUJ"
  },
  "jobId": "5d3bc131-c0dc-4222-9a2a-351363f437fa"
}
```

**SDK Code**

```python
import requests

url = "https://developer.api.autodesk.com/construction/admin/v1/projects/367d5cc2-9008-462c-96e5-c9491db85d93"

payload = {
    "name": "Sample Project",
    "startDate": "2010-01-01",
    "endDate": "2015-12-31",
    "type": "Hospital",
    "classification": "production",
    "projectValue": {
        "value": 1650000,
        "currency": "USD"
    },
    "jobNumber": "HP-0002",
    "addressLine1": "123 Main Street",
    "addressLine2": "Suite 2",
    "city": "San Francisco",
    "stateOrProvince": "California",
    "postalCode": "94001",
    "country": "United States",
    "timezone": "America/Los_Angeles",
    "constructionType": "New Construction",
    "deliveryMethod": "Design-Bid",
    "contractType": "Unit Price",
    "currentPhase": "Design",
    "businessUnitId": "802a4a61-3507-4d4e-8e3c-242a31cc0549",
    "products": [{ "key": "projectAdministration" }, { "key": "documentManagement" }, { "key": "fieldManagement" }]
}
headers = {
    "Accept-Language": "en",
    "Region": "US",
    "User-Id": "6cc15635-2fbd-4f73-afbe-abd833408a1d",
    "Authorization": "<token>.",
    "Content-Type": "application/json"
}

response = requests.patch(url, json=payload, headers=headers)

print(response.json())
```

```javascript
const url = 'https://developer.api.autodesk.com/construction/admin/v1/projects/367d5cc2-9008-462c-96e5-c9491db85d93';
const options = {
  method: 'PATCH',
  headers: {
    'Accept-Language': 'en',
    Region: 'US',
    'User-Id': '6cc15635-2fbd-4f73-afbe-abd833408a1d',
    Authorization: '<token>.',
    'Content-Type': 'application/json'
  },
  body: '{"name":"Sample Project","startDate":"2010-01-01","endDate":"2015-12-31","type":"Hospital","classification":"production","projectValue":{"value":1650000,"currency":"USD"},"jobNumber":"HP-0002","addressLine1":"123 Main Street","addressLine2":"Suite 2","city":"San Francisco","stateOrProvince":"California","postalCode":"94001","country":"United States","timezone":"America/Los_Angeles","constructionType":"New Construction","deliveryMethod":"Design-Bid","contractType":"Unit Price","currentPhase":"Design","businessUnitId":"802a4a61-3507-4d4e-8e3c-242a31cc0549","products":[{"key":"projectAdministration"},{"key":"documentManagement"},{"key":"fieldManagement"}]}'
};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
```

```go
package main

import (
	"fmt"
	"strings"
	"net/http"
	"io"
)

func main() {

	url := "https://developer.api.autodesk.com/construction/admin/v1/projects/367d5cc2-9008-462c-96e5-c9491db85d93"

	payload := strings.NewReader("{\n  \"name\": \"Sample Project\",\n  \"startDate\": \"2010-01-01\",\n  \"endDate\": \"2015-12-31\",\n  \"type\": \"Hospital\",\n  \"classification\": \"production\",\n  \"projectValue\": {\n    \"value\": 1650000,\n    \"currency\": \"USD\"\n  },\n  \"jobNumber\": \"HP-0002\",\n  \"addressLine1\": \"123 Main Street\",\n  \"addressLine2\": \"Suite 2\",\n  \"city\": \"San Francisco\",\n  \"stateOrProvince\": \"California\",\n  \"postalCode\": \"94001\",\n  \"country\": \"United States\",\n  \"timezone\": \"America/Los_Angeles\",\n  \"constructionType\": \"New Construction\",\n  \"deliveryMethod\": \"Design-Bid\",\n  \"contractType\": \"Unit Price\",\n  \"currentPhase\": \"Design\",\n  \"businessUnitId\": \"802a4a61-3507-4d4e-8e3c-242a31cc0549\",\n  \"products\": [\n    {\n      \"key\": \"projectAdministration\"\n    },\n    {\n      \"key\": \"documentManagement\"\n    },\n    {\n      \"key\": \"fieldManagement\"\n    }\n  ]\n}")

	req, _ := http.NewRequest("PATCH", url, payload)

	req.Header.Add("Accept-Language", "en")
	req.Header.Add("Region", "US")
	req.Header.Add("User-Id", "6cc15635-2fbd-4f73-afbe-abd833408a1d")
	req.Header.Add("Authorization", "<token>.")
	req.Header.Add("Content-Type", "application/json")

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
```

```ruby
require 'uri'
require 'net/http'

url = URI("https://developer.api.autodesk.com/construction/admin/v1/projects/367d5cc2-9008-462c-96e5-c9491db85d93")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Patch.new(url)
request["Accept-Language"] = 'en'
request["Region"] = 'US'
request["User-Id"] = '6cc15635-2fbd-4f73-afbe-abd833408a1d'
request["Authorization"] = '<token>.'
request["Content-Type"] = 'application/json'
request.body = "{\n  \"name\": \"Sample Project\",\n  \"startDate\": \"2010-01-01\",\n  \"endDate\": \"2015-12-31\",\n  \"type\": \"Hospital\",\n  \"classification\": \"production\",\n  \"projectValue\": {\n    \"value\": 1650000,\n    \"currency\": \"USD\"\n  },\n  \"jobNumber\": \"HP-0002\",\n  \"addressLine1\": \"123 Main Street\",\n  \"addressLine2\": \"Suite 2\",\n  \"city\": \"San Francisco\",\n  \"stateOrProvince\": \"California\",\n  \"postalCode\": \"94001\",\n  \"country\": \"United States\",\n  \"timezone\": \"America/Los_Angeles\",\n  \"constructionType\": \"New Construction\",\n  \"deliveryMethod\": \"Design-Bid\",\n  \"contractType\": \"Unit Price\",\n  \"currentPhase\": \"Design\",\n  \"businessUnitId\": \"802a4a61-3507-4d4e-8e3c-242a31cc0549\",\n  \"products\": [\n    {\n      \"key\": \"projectAdministration\"\n    },\n    {\n      \"key\": \"documentManagement\"\n    },\n    {\n      \"key\": \"fieldManagement\"\n    }\n  ]\n}"

response = http.request(request)
puts response.read_body
```

```java
import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.Unirest;

HttpResponse<String> response = Unirest.patch("https://developer.api.autodesk.com/construction/admin/v1/projects/367d5cc2-9008-462c-96e5-c9491db85d93")
  .header("Accept-Language", "en")
  .header("Region", "US")
  .header("User-Id", "6cc15635-2fbd-4f73-afbe-abd833408a1d")
  .header("Authorization", "<token>.")
  .header("Content-Type", "application/json")
  .body("{\n  \"name\": \"Sample Project\",\n  \"startDate\": \"2010-01-01\",\n  \"endDate\": \"2015-12-31\",\n  \"type\": \"Hospital\",\n  \"classification\": \"production\",\n  \"projectValue\": {\n    \"value\": 1650000,\n    \"currency\": \"USD\"\n  },\n  \"jobNumber\": \"HP-0002\",\n  \"addressLine1\": \"123 Main Street\",\n  \"addressLine2\": \"Suite 2\",\n  \"city\": \"San Francisco\",\n  \"stateOrProvince\": \"California\",\n  \"postalCode\": \"94001\",\n  \"country\": \"United States\",\n  \"timezone\": \"America/Los_Angeles\",\n  \"constructionType\": \"New Construction\",\n  \"deliveryMethod\": \"Design-Bid\",\n  \"contractType\": \"Unit Price\",\n  \"currentPhase\": \"Design\",\n  \"businessUnitId\": \"802a4a61-3507-4d4e-8e3c-242a31cc0549\",\n  \"products\": [\n    {\n      \"key\": \"projectAdministration\"\n    },\n    {\n      \"key\": \"documentManagement\"\n    },\n    {\n      \"key\": \"fieldManagement\"\n    }\n  ]\n}")
  .asString();
```

```php
<?php
require_once('vendor/autoload.php');

$client = new \GuzzleHttp\Client();

$response = $client->request('PATCH', 'https://developer.api.autodesk.com/construction/admin/v1/projects/367d5cc2-9008-462c-96e5-c9491db85d93', [
  'body' => '{
  "name": "Sample Project",
  "startDate": "2010-01-01",
  "endDate": "2015-12-31",
  "type": "Hospital",
  "classification": "production",
  "projectValue": {
    "value": 1650000,
    "currency": "USD"
  },
  "jobNumber": "HP-0002",
  "addressLine1": "123 Main Street",
  "addressLine2": "Suite 2",
  "city": "San Francisco",
  "stateOrProvince": "California",
  "postalCode": "94001",
  "country": "United States",
  "timezone": "America/Los_Angeles",
  "constructionType": "New Construction",
  "deliveryMethod": "Design-Bid",
  "contractType": "Unit Price",
  "currentPhase": "Design",
  "businessUnitId": "802a4a61-3507-4d4e-8e3c-242a31cc0549",
  "products": [
    {
      "key": "projectAdministration"
    },
    {
      "key": "documentManagement"
    },
    {
      "key": "fieldManagement"
    }
  ]
}',
  'headers' => [
    'Accept-Language' => 'en',
    'Authorization' => '<token>.',
    'Content-Type' => 'application/json',
    'Region' => 'US',
    'User-Id' => '6cc15635-2fbd-4f73-afbe-abd833408a1d',
  ],
]);

echo $response->getBody();
```

```csharp
using RestSharp;

var client = new RestClient("https://developer.api.autodesk.com/construction/admin/v1/projects/367d5cc2-9008-462c-96e5-c9491db85d93");
var request = new RestRequest(Method.PATCH);
request.AddHeader("Accept-Language", "en");
request.AddHeader("Region", "US");
request.AddHeader("User-Id", "6cc15635-2fbd-4f73-afbe-abd833408a1d");
request.AddHeader("Authorization", "<token>.");
request.AddHeader("Content-Type", "application/json");
request.AddParameter("application/json", "{\n  \"name\": \"Sample Project\",\n  \"startDate\": \"2010-01-01\",\n  \"endDate\": \"2015-12-31\",\n  \"type\": \"Hospital\",\n  \"classification\": \"production\",\n  \"projectValue\": {\n    \"value\": 1650000,\n    \"currency\": \"USD\"\n  },\n  \"jobNumber\": \"HP-0002\",\n  \"addressLine1\": \"123 Main Street\",\n  \"addressLine2\": \"Suite 2\",\n  \"city\": \"San Francisco\",\n  \"stateOrProvince\": \"California\",\n  \"postalCode\": \"94001\",\n  \"country\": \"United States\",\n  \"timezone\": \"America/Los_Angeles\",\n  \"constructionType\": \"New Construction\",\n  \"deliveryMethod\": \"Design-Bid\",\n  \"contractType\": \"Unit Price\",\n  \"currentPhase\": \"Design\",\n  \"businessUnitId\": \"802a4a61-3507-4d4e-8e3c-242a31cc0549\",\n  \"products\": [\n    {\n      \"key\": \"projectAdministration\"\n    },\n    {\n      \"key\": \"documentManagement\"\n    },\n    {\n      \"key\": \"fieldManagement\"\n    }\n  ]\n}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
```

```swift
import Foundation

let headers = [
  "Accept-Language": "en",
  "Region": "US",
  "User-Id": "6cc15635-2fbd-4f73-afbe-abd833408a1d",
  "Authorization": "<token>.",
  "Content-Type": "application/json"
]
let parameters = [
  "name": "Sample Project",
  "startDate": "2010-01-01",
  "endDate": "2015-12-31",
  "type": "Hospital",
  "classification": "production",
  "projectValue": [
    "value": 1650000,
    "currency": "USD"
  ],
  "jobNumber": "HP-0002",
  "addressLine1": "123 Main Street",
  "addressLine2": "Suite 2",
  "city": "San Francisco",
  "stateOrProvince": "California",
  "postalCode": "94001",
  "country": "United States",
  "timezone": "America/Los_Angeles",
  "constructionType": "New Construction",
  "deliveryMethod": "Design-Bid",
  "contractType": "Unit Price",
  "currentPhase": "Design",
  "businessUnitId": "802a4a61-3507-4d4e-8e3c-242a31cc0549",
  "products": [["key": "projectAdministration"], ["key": "documentManagement"], ["key": "fieldManagement"]]
] as [String : Any]

let postData = JSONSerialization.data(withJSONObject: parameters, options: [])

let request = NSMutableURLRequest(url: NSURL(string: "https://developer.api.autodesk.com/construction/admin/v1/projects/367d5cc2-9008-462c-96e5-c9491db85d93")! as URL,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "PATCH"
request.allHTTPHeaderFields = headers
request.httpBody = postData as Data

let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
  if (error != nil) {
    print(error as Any)
  } else {
    let httpResponse = response as? HTTPURLResponse
    print(httpResponse)
  }
})

dataTask.resume()
```