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

# Update redline members

> Replaces or upserts the members for an existing redline request. Each member must have an email, displayName, and role.



## OpenAPI

````yaml PUT /v0/redline-requests/{redlineRequestId}/members
openapi: 3.0.0
info:
  title: Formable API
  version: 1.0.0
  description: >-
    The Formable API lets you embed e-signature and document redlining workflows
    directly into your product. Create templates, send documents for signature,
    run collaborative redline negotiations, and retrieve completed documents.
servers:
  - url: https://formable-production.up.railway.app/api
    description: Production
  - url: http://localhost:4000/api
    description: Local
security:
  - bearerAuth: []
tags:
  - name: Templates
    description: Upload documents and generate editor URLs.
  - name: Signature Requests
    description: Send documents for e-signature and retrieve signed results.
  - name: Redlining
    description: Create and manage collaborative redline negotiations.
  - name: Billing
    description: Retrieve usage information.
  - name: Health
    description: Service health checks.
paths:
  /v0/redline-requests/{redlineRequestId}/members:
    put:
      tags:
        - Redlining
      summary: Update redline members
      description: >-
        Replaces or upserts the members for an existing redline request. Each
        member must have an email, displayName, and role.
      operationId: putRedlineMembers
      parameters:
        - in: path
          name: redlineRequestId
          required: true
          schema:
            type: string
          description: The ID of the redline request to update members for.
          example: abc123xyz
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - members
              properties:
                members:
                  type: array
                  minItems: 1
                  description: >-
                    Array of members to set for the redline request (replaces
                    existing).
                  items:
                    $ref: '#/components/schemas/RedlineMemberInput'
      responses:
        '200':
          description: Redline members updated successfully.
          content:
            application/json:
              schema:
                type: object
                properties:
                  members:
                    type: array
                    description: The updated list of redline members.
                    items:
                      $ref: '#/components/schemas/RedlineMember'
        '400':
          $ref: '#/components/responses/BadRequestError'
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        '403':
          $ref: '#/components/responses/ForbiddenError'
        '404':
          $ref: '#/components/responses/NotFoundError'
        '500':
          $ref: '#/components/responses/InternalServerError'
      security:
        - bearerAuth: []
components:
  schemas:
    RedlineMemberInput:
      type: object
      required:
        - email
        - displayName
        - role
      properties:
        email:
          type: string
          format: email
          description: Email address of the member.
          example: member@example.com
        displayName:
          type: string
          description: Display name of the member.
          example: John Doe
        role:
          $ref: '#/components/schemas/RedlineMemberRole'
    RedlineMember:
      type: object
      properties:
        role:
          $ref: '#/components/schemas/RedlineMemberRole'
        email:
          type: string
          format: email
          description: Member email address.
        displayName:
          type: string
          description: Optional display name for the member.
    RedlineMemberRole:
      type: string
      enum:
        - DisclosingParty
        - ReceivingParty
        - DisclosingCounsel
        - ReceivingCounsel
      description: Role of the member in the redline request.
    Error:
      type: object
      properties:
        error:
          type: string
          description: A human-readable error message.
  responses:
    BadRequestError:
      description: Bad request - missing or invalid parameters.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error: templateId is required
    UnauthorizedError:
      description: Unauthorized - missing or invalid bearer token.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error: Auth token not valid
    ForbiddenError:
      description: Forbidden - the client is not authorized to perform this action.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error: Client not authorized to perform this action
    NotFoundError:
      description: The requested resource was not found.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error: Resource not found for id abc123xyz
    InternalServerError:
      description: Internal server error.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error: Internal server error
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        OAuth 2.0 client credentials access token, passed as a Bearer token in
        the Authorization header.

````