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

# Remove a contract approver

> Removes an approver, identified by email, from the contract, as long as the next send has not happened yet. Returns the approvers of the contract after the change. See [How contract approvers work](/api-reference/contract-approvers).



## OpenAPI

````yaml /openapi-2025-01-29.alpha.json delete /contracts/{id}/approvers
openapi: 3.0.0
info:
  title: Tomorro API
  description: >
    The Tomorro Public API enables you to programmatically manage contracts,
    members, and counterparties. Build powerful integrations that automate your
    contract management workflows.


    ## API Version: 2025-01-29.alpha


    This documentation is for API version `2025-01-29.alpha`.


    ### Using this version

    ```

    curl -X GET https://api.tomorro.com/members \
      -H "x-api-key: YOUR_API_KEY" \
      -H "tomorro-version: 2025-01-29.alpha"
    ```
  version: 2025-01-29.alpha
  contact: {}
servers:
  - url: https://api.tomorro.com/v2
    description: Production
  - url: https://api.demo.tomorro.com/v2
    description: Demo
  - url: http://localhost:3015
    description: Local Development
security: []
tags: []
paths:
  /contracts/{id}/approvers:
    delete:
      tags:
        - Contracts
      summary: Remove a contract approver
      description: >-
        Removes an approver, identified by email, from the contract, as long as
        the next send has not happened yet. Returns the approvers of the
        contract after the change. See [How contract approvers
        work](/api-reference/contract-approvers).
      operationId: ContractController_removeApprover
      parameters:
        - name: id
          required: true
          in: path
          description: The unique identifier (UUID) of the contract
          schema:
            example: 550e8400-e29b-41d4-a716-446655440000
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ContractApproverRequestDto'
      responses:
        '200':
          description: Approver removed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListAdditionalApproversResponseDto'
        '401':
          description: Unauthorized - Invalid or missing API key
        '403':
          description: Forbidden - Insufficient permissions
        '404':
          description: No organization member has this email
        '429':
          description: Too Many Requests - Rate limit exceeded
      security:
        - X-API-KEY: []
components:
  schemas:
    ContractApproverRequestDto:
      type: object
      properties:
        email:
          type: string
          format: email
          description: >-
            Email of the organization member. The email identifies one member,
            so a name is never accepted. To add an approver, the member must be
            an admin or a manager.
          example: manager@acme.com
      required:
        - email
      additionalProperties: false
    ListAdditionalApproversResponseDto:
      type: object
      properties:
        additionalApprovers:
          description: Custom additional approvers configured on the contract preferences.
          example:
            - memberId: 550e8400-e29b-41d4-a716-446655440000
              email: manager@acme.com
              firstname: Morgan
              lastname: Lee
          type: array
          items:
            $ref: '#/components/schemas/AdditionalApproverDto'
        customApproversAllowed:
          type: boolean
          description: >-
            True when no type-level BEFORE_SEND_FOR_REVIEW workflow applies, so
            custom approvers can be added (same gate as the product UI).
          example: true
      required:
        - additionalApprovers
        - customApproversAllowed
    AdditionalApproverDto:
      type: object
      properties:
        memberId:
          type: string
          description: Member id of the custom approver.
          example: 550e8400-e29b-41d4-a716-446655440000
        email:
          type: string
          description: Approver email address.
          example: manager@acme.com
        firstname:
          type: string
          description: Approver first name when available.
          example: Morgan
          nullable: true
        lastname:
          type: string
          description: Approver last name when available.
          example: Lee
          nullable: true
      required:
        - memberId
        - email
  securitySchemes:
    X-API-KEY:
      type: apiKey
      in: header
      name: x-api-key
      description: >-
        API key for authentication. Get your key at
        https://app.tomorro.com/settings/integrations?integration=api-key

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.