Beta
This endpoint is in beta and may not be available for all organizations.
Updates a nonempty batch of distinct custom fields on a project, including archived projects. Returns affected entries in request order, including value: null for cleared fields. Duplicate field IDs are rejected.
The effective actor must have permission to edit the project. Requires Project custom fields availability; private and API-only field permissions apply. Delegated humans may preserve API-only values but cannot change or clear them.
Supports the same value types as project.create.customFields. Use null to clear an optional field; required fields cannot be cleared. Boolean false and Number zero satisfy requiredness. Multi-select inputs replace the selected values. Submit configured option values; configured archived options remain valid.
Omitted fields and unrelated project properties remain unchanged. Missing historical required fields do not block edits. New User references must identify active, nonservice users in the organization visible to the effective actor; unchanged historical references must still belong to the organization and remain visible.
If any submitted value is invalid, no fields are updated. Concurrent writes to the same field use the last completed update. Retrying a request can overwrite a newer value, so avoid concurrent updates to the same project.
Definition discovery retains hiringProcessMetadata:read and User discovery retains organization:read.
Requires the projectsWrite permission.
| Time | Status | User Agent | |
|---|---|---|---|
Retrieving recent requests… | |||

