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

# Update Team Member

> Accept team invite

Update an existing team member's role and permissions. This endpoint allows you to modify member access levels without removing and re-adding them, preserving their history and activity within the team.

<Note>
  You must have Admin or Owner permissions to update team member roles. Owners can update any member; Admins cannot update Owner roles.
</Note>

<Warning>
  **Cannot Modify Owner Role:** The team owner cannot be changed through this endpoint. To transfer ownership, contact support or use the dedicated ownership transfer process.
</Warning>

<Warning>
  **Downgrading Permissions:** When downgrading a member's role (e.g., Admin to Member), they will immediately lose access to administrative functions. Ensure this doesn't disrupt ongoing operations.
</Warning>

## Permission Impact

<Tabs>
  <Tab title="Upgrading Roles">
    **Member → Admin:**

    * ✅ Can now manage team settings
    * ✅ Can add/remove members
    * ✅ Can configure integrations
    * ✅ Retains all previous Member permissions

    **Admin → Owner:**

    * ✅ Full administrative control
    * ✅ Can delete team
    * ✅ Can manage billing
    * ⚠️ Only one owner allowed per team
  </Tab>

  <Tab title="Downgrading Roles">
    **Admin → Member:**

    * ❌ Cannot manage team settings
    * ❌ Cannot add/remove members
    * ❌ Cannot configure integrations
    * ✅ Can still create scans and manage assets

    **Member → Viewer:**

    * ❌ Cannot create or modify scans
    * ❌ Cannot upload assets
    * ❌ Cannot create templates
    * ✅ Can view all scans and results
  </Tab>
</Tabs>


## OpenAPI

````yaml patch /v1/user/team/member
openapi: 3.1.0
info:
  title: PDCP API
  version: '1.0'
  summary: ProjectDiscovery Cloud Platform
  description: >-
    For more details, checkout
    https://docs.projectdiscovery.io/api-reference/editor/scan
servers:
  - url: https://api.projectdiscovery.io
    description: Production
  - url: https://api.dev.projectdiscovery.io
    description: Development
  - url: http://localhost:8085
    description: Localhost
security:
  - X-API-Key: []
paths:
  /v1/user/team/member:
    patch:
      tags:
        - internal
      summary: Update Team Member
      description: Accept team invite
      operationId: patch-v1-user-team-member
      parameters:
        - schema:
            type: string
          in: header
          description: >-
            Retrieve the Team ID from:
            https://cloud.projectdiscovery.io/settings/team
          name: X-Team-Id
      requestBody:
        $ref: '#/components/requestBodies/PatchTeamMemberRequest'
      responses:
        '200':
          $ref: '#/components/responses/MessageResponse'
        '400':
          $ref: '#/components/responses/MessageResponse'
        '401':
          $ref: '#/components/responses/MessageResponse'
        '403':
          $ref: '#/components/responses/MessageResponse'
        '500':
          $ref: '#/components/responses/MessageResponse'
        default:
          $ref: '#/components/responses/ErrorResponse'
      security:
        - X-API-Key: []
components:
  requestBodies:
    PatchTeamMemberRequest:
      content:
        application/json:
          schema:
            type: object
            properties:
              email:
                type: string
              role:
                type: string
                description: >-
                  Team member role. Valid values are ADMIN, MEMBER, VIEWER,
                  GUEST.
            required:
              - email
  responses:
    MessageResponse:
      description: Example response
      content:
        application/json:
          schema:
            type: object
            properties:
              message:
                type: string
            required:
              - message
    ErrorResponse:
      description: Example response
      content:
        application/json:
          schema:
            type: object
            required:
              - message
            properties:
              message:
                type: string
              kind:
                type: string
              code:
                type: string
              error:
                type: string
              error_id:
                type: string
              param:
                type: string
              status:
                type: integer
  securitySchemes:
    X-API-Key:
      name: X-API-Key
      type: apiKey
      in: header

````