> ## Documentation Index
> Fetch the complete documentation index at: https://docs.fynn.eu/llms.txt
> Use this file to discover all available pages before exploring further.

# Change the role of an offer recipient

> Changes the role of an offer recipient. This cannot be done, when the offer is already signed.

<sup>Required permissions: `offer:write`</sup>



## OpenAPI

````yaml put /offer-recipients/{id}/role
openapi: 3.1.0
info:
  title: Fynn API
  description: ''
  termsOfService: https://www.fynn.eu/tos
  contact:
    name: Fynn UG (haftungsbeschränkt)
    url: https://www.fynn.eu
    email: hi@fynn.eu
  license:
    name: Proprietary
    url: https://www.fynn.eu/license
  version: 0.0.0
servers:
  - url: https://coreapi.io
    description: Production
  - url: https://preview.coreapi.io
    description: Sandbox
security:
  - JWT: []
tags: []
paths:
  /offer-recipients/{id}/role:
    parameters: []
    put:
      tags:
        - OfferRecipient
      summary: Change the role of an offer recipient
      description: >-
        Changes the role of an offer recipient. This cannot be done, when the
        offer is already signed.


        <sup>Required permissions: `offer:write`</sup>
      operationId: api_offer-recipients_idrole_put
      parameters:
        - name: id
          in: path
          description: OfferRecipient identifier
          required: true
          deprecated: false
          schema:
            type: string
          style: simple
          explode: false
      requestBody:
        description: The updated OfferRecipient resource
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OfferRecipient.SetOfferRecipientRoleInput'
          text/html:
            schema:
              $ref: '#/components/schemas/OfferRecipient.SetOfferRecipientRoleInput'
        required: true
      responses:
        '200':
          description: OfferRecipient resource updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OfferRecipient'
            text/html:
              schema:
                $ref: '#/components/schemas/OfferRecipient'
          links: {}
        '400':
          description: Invalid input
        '404':
          description: Resource not found
        '422':
          description: Unprocessable entity
      deprecated: false
      security:
        - JWT:
            - offer:write
      x-codeSamples:
        - lang: bash
          label: cURL
          source: |-
            curl -X PUT \
             /offer-recipients/{id}/role \
             --header "Content-Type: application/json" \
             --header "Authorization: Bearer <token>" \
             --data '{
                "role": ""
            }'
components:
  schemas:
    OfferRecipient.SetOfferRecipientRoleInput:
      type: object
      description: ''
      deprecated: false
      required:
        - role
      properties:
        role:
          description: The role of the recipient
          type:
            - string
            - 'null'
          enum:
            - read
            - sign
            - null
    OfferRecipient:
      type: object
      description: ''
      deprecated: false
      properties:
        id:
          readOnly: true
          type: string
        email:
          type: string
        firstName:
          type: string
        lastName:
          type: string
        offer:
          type: string
          format: uuid
          example: https://example.com/
        role:
          type: string
          enum:
            - read
            - sign
        createdAt:
          readOnly: true
          type: string
          format: date-time
        signingStatus:
          readOnly: true
          default: not_started
          example: not_started
          type: string
          enum:
            - pending
            - started
            - signed
            - not_started
            - archived
        signingLog:
          readOnly: true
          type: array
          items:
            type: string
        signedDocument:
          readOnly: true
          type:
            - string
            - 'null'
          format: uuid
          example: https://example.com/
        link:
          readOnly: true
          description: Link to the offer for the recipient
          example: https://example.com/offers/1/recipient-1
          type: string
        signingName:
          readOnly: true
          type: string
        signingNameRole:
          readOnly: true
          type: string
        signatureDone:
          readOnly: true
          type: boolean
        submissionSlug:
          readOnly: true
          type:
            - string
            - 'null'
        tenantId:
          readOnly: true
          type: string
  securitySchemes:
    JWT:
      type: http
      scheme: bearer

````