# Update Project Offering Role Updates a Project Offering Role. This includes assigning a specific Person or Requisition. Removing or replacing an assignment where the current person has actuals will return a 409 Conflict. Endpoint: PATCH /v1/projects/{project_id}/offerings/{project_offering_id}/roles/{id} Version: v1 Security: ApiKey ## Path parameters: - `id` (string, required) ID of the resource - `project_id` (string, required) - `project_offering_id` (string, required) ## Request fields (application/json-patch+json): - `role_id` (string,null) Id of the organization Role that will be performing work on this ProjectOffering. - `assignment` (object,null) Assignment of a Person or Requisition to this role. Set to null to unassign. _Note: Removing or replacing an assignment where the person has actuals will return a 409 Conflict. The person must first be reassigned to another role or have their actuals removed._ - `assignment.id` (string, required) The unique identifier of the resource assigned to the project offering role. - `assignment.type` (object, required) The type of the resource assigned to the project offering role. This describes which entity type is being referred to by id. - `tags` (array,null) List of tags to associate with this Project Offering Role. When provided, this completely replaces existing tags. Provide an empty array to clear all tags. Omit this property to leave tags unchanged. ## Response 400 fields (application/json): - `type` (string) RFC reference for the error type - `title` (string) Human-readable summary of the error - `status` (integer) HTTP status code - `errors` (array) Detailed error messages for each validation failure - `trace_id` (string) Trace identifier for debugging ## Response 200 fields