---
title: "Assign a proposal to a user"
method: PUT
path: "/proposals/{proposalId}/assignUser"
tags: ["Proposals"]
---

# Assign a proposal to a user

`PUT /proposals/{proposalId}/assignUser`

## Request

- Base URL: `https://sb2api.servicechannel.com/v3`
- URL: `https://sb2api.servicechannel.com/v3/proposals/{proposalId}/assignUser`
- Auth: OAuth 2
  - Authorization code: `https://sb2login.servicechannel.com/oauth/authorize`
  - Token URL: `https://sb2login.servicechannel.com/oauth/token`
- TypeScript: <https://skmtc.dev/servicechannel/apis/servicechannel-api-v-3/docs/proposals/:proposalId/assignUser/put.ts> (a function with typed inputs; its response is checked against the schema)

Assigns the proposal to the specified user in the subscriber’s organization. If the proposal already has an assignee, the appointed user is updated.
            <br />***Note:*** You cannot [assign a proposal](/guides/proposals/assign-or-escalate-a-proposal/#assign-a-proposal-to-a-user) in the *Approved* or *Rejected* status.
            <br />**Example Request**
            
                PUT /proposals/{proposalId}/assignUser
                {
                  "UserId": 1682923,
                  "Comments": "Material costs to be reviewed",
                  "UserEmail": "cajunsoulrestaurant@gmail.com",
                  "Note": "Material costs are higher than expected",
                  "PinNote": true
                 }

## Path parameters

- `proposalId` integer, required

## Request body

- ServiceChannelServicesMessagingProposalsAssignUserToProposalRequest: The request object to assign a proposal to a user.
  - `UserId` integer, required: The unique numeric identifier of the user to assign the proposal to.
  - `Comments` string: Your comment describing why you are assigning or reassigning the proposal to the specified user.
  - `UserEmail` string: The email address to send a notification about the assigned proposal to. The default is the email address of the user who is assigned the proposal.
  - `ReasonString` string: Reason for approving the proposal. Don’t pass when assigning the proposal to a user.
  - `Note` string: Note added upon assigning or reassigning the proposal.
  - `PinNote` boolean: When set to `true`, adds the proposal `Note` as a **pinned note** on the associated work order. When set to `false`, the proposal `Note` is added as an **ordinary note** on the associated work order. ***Note:*** To pin a proposal note added upon assignment/reassignment, subscribers should have an additional feature enabled: *PRPAssignToWONote*. This feature posts proposal assignment notes on the associated work order.

## Response `204`

The proposal is assigned to the specified user, and the response is intentionally blank.

## Other responses

- `400`: The request is not accepted due to bad syntax, missing parameters, insufficient data, etc. <br/>Error codes: 502 — Proposal not found 503 — Request is empty or null 503 — Wrong User Id 503 — Selected proposal has been finalized 503 — Selected user has no required rights 503 — Selected user doesn't have Location or Trade access
- `401`: The request is not authorized. <br/>Error codes: 504 — API call rejected by security permissions

---

[API](https://skmtc.dev/servicechannel/apis/servicechannel-api-v-3.md) - [All operations](https://skmtc.dev/servicechannel/apis/servicechannel-api-v-3/llms.txt) - [OpenAPI document](https://skmtc.dev/servicechannel/apis/servicechannel-api-v-3/revisions/d490d6596809?raw)
