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

# Update an existing speaker

> Use this endpoint to update an existing speaker for a specific event type in your Zuddl organization.

Required API key scopes: `WRITE`

**This API can only be called with an access key that was generated for Backend usage.**



## OpenAPI

````yaml https://api.prod.zuddl.com/api/v3/api-docs/api-product put /v1/events/{eventId}/speakers/{speakerId}
openapi: 3.1.0
info:
  title: Zuddl API Documentation
  description: >-
    Zuddl RESTful APIs let you interact with the Zuddl platform and take action
    for your event or webinar. They let you add attendees, get attendee details,
    get event details, and more.


    The API response is returned in JSON, which your systems can easily consume.


    The API parameters allow you to customize the response using filters,
    sorting, pagination, and other parameters. Parameter values should be
    percent-encoded (URL-encoded) to ensure correct transmission, especially if
    they contain special characters such as spaces, semi-colons, or slashes.


    # Rate limits


    | Metrics | Value |

    | --- | --- |

    | Requests/second | 10 |

    | Burst or no. of concurrent calls allowed | 100 requests |

    | Total quota | 10000 requests/day |
  version: '1.0'
servers:
  - url: https://api.zuddl.com/
security:
  - api_key: []
tags:
  - name: Events
    description: API endpoints for managing events
  - name: Attendees
    description: >-
      The attendee APIs let you add and retrieve attendee in a particular event
      type.
  - name: Sessions
    description: API endpoints for managing event sessions
  - name: Speakers
    description: API endpoints for managing event speakers
  - name: Sponsors
    description: API endpoints for managing event sponsors
  - name: Locations
    description: API endpoints for managing event locations
paths:
  /v1/events/{eventId}/speakers/{speakerId}:
    put:
      tags:
        - Speakers
      summary: Update an existing speaker
      description: >-
        Use this endpoint to update an existing speaker for a specific event
        type in your Zuddl organization.


        Required API key scopes: `WRITE`


        **This API can only be called with an access key that was generated for
        Backend usage.**
      operationId: updateSpeaker
      parameters:
        - name: eventId
          in: path
          description: Unique identifier of the event
          required: true
          schema:
            type: string
            pattern: >-
              ^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
          example: 4fcebf73-3ddb-4fe6-b56d-5dd7dedb7c3d
        - name: speakerId
          in: path
          description: Unique identifier of the speaker
          required: true
          schema:
            type: string
          example: 4fcebf73-3ddb-4fe6-b56d-5dd7dedb7c3g
      requestBody:
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/org.events.app.domain.api_product.event.speaker.dtos.SpeakerRequest
        required: true
      responses:
        '200':
          description: Speaker updated successfully
        '400':
          description: Invalid speaker ID or event ID
          content:
            '*/*':
              schema:
                $ref: >-
                  #/components/schemas/org.events.app._internal._response.v1.ApiErrorResponse
        '401':
          description: Unauthorized
          content:
            '*/*':
              schema:
                $ref: >-
                  #/components/schemas/org.events.app._internal._response.v1.ApiErrorResponse
        '404':
          description: Speaker not found
          content:
            '*/*':
              schema:
                $ref: >-
                  #/components/schemas/org.events.app._internal._response.v1.ApiErrorResponse
components:
  schemas:
    org.events.app.domain.api_product.event.speaker.dtos.SpeakerRequest:
      properties:
        firstName:
          type: string
          description: First name of the speaker
          example: John
          maxLength: 150
          minLength: 0
        lastName:
          type: string
          description: Last name of the speaker
          example: Doe
          maxLength: 150
          minLength: 0
        company:
          type: string
          description: Company of the speaker
          example: Tech Innovations Inc.
          maxLength: 200
          minLength: 0
        designation:
          type: string
          description: Designation of the speaker
          example: Chief Technology Officer
          maxLength: 200
          minLength: 0
        bio:
          type: string
          description: >-
            Bio of the speaker. May contain rich-text HTML markup (e.g. bold,
            italic, lists, links). Plain text is also accepted and stored as-is.
            Disallowed content (script/iframe tags, javascript: URLs, inline
            event handlers) is rejected.
          example: <p>John is a <strong>renowned expert</strong> in his field...</p>
          maxLength: 3000
          minLength: 0
        linkedInProfile:
          type: string
          description: LinkedIn profile URL of the speaker
          example: https://www.linkedin.com/in/johndoe
        twitterProfile:
          type: string
          description: Twitter profile URL of the speaker
          example: https://twitter.com/johndoe
        facebookProfile:
          type: string
          description: Facebook profile URL of the speaker
          example: https://www.facebook.com/johndoe
        websiteUrl:
          type: string
          description: Personal website URL of the speaker
          example: https://johndoe.com
        externalRefId:
          type: string
          description: >-
            A reference ID that you can use to map this speaker to your external
            systems or databases
          example: d812a64f8865428990249a120792c3d8
      required:
        - firstName
        - lastName
    org.events.app._internal._response.v1.ApiErrorResponse:
      properties:
        timestamp:
          type: string
          format: date-time
        message:
          type: string
        description:
          type: string
        errors:
          type: object
          additionalProperties:
            type: string
  securitySchemes:
    api_key:
      type: apiKey
      description: Provide your API key secret in the `Authorization` header
      name: Authorization
      in: header

````