:doc:`ChimeSDKMeetings <../../chime-sdk-meetings>` / Client / create_attendee

***************
create_attendee
***************



.. py:method:: ChimeSDKMeetings.Client.create_attendee(**kwargs)

  

  Creates a new attendee for an active Amazon Chime SDK meeting. For more information about the Amazon Chime SDK, see `Using the Amazon Chime SDK <https://docs.aws.amazon.com/chime-sdk/latest/dg/meetings-sdk.html>`__ in the *Amazon Chime Developer Guide*.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/chime-sdk-meetings-2021-07-15/CreateAttendee>`_  


  **Request Syntax**
  ::

    response = client.create_attendee(
        MeetingId='string',
        ExternalUserId='string',
        Capabilities={
            'Audio': 'SendReceive'|'Send'|'Receive'|'None',
            'Video': 'SendReceive'|'Send'|'Receive'|'None',
            'Content': 'SendReceive'|'Send'|'Receive'|'None'
        }
    )
    
  :type MeetingId: string
  :param MeetingId: **[REQUIRED]** 

    The unique ID of the meeting.

    

  
  :type ExternalUserId: string
  :param ExternalUserId: **[REQUIRED]** 

    The Amazon Chime SDK external user ID. An idempotency token. Links the attendee to an identity managed by a builder application.

     

    Pattern: ``[-_&@+=,(){}\[\]\/«».:|'"#a-zA-Z0-9À-ÿ\s]*``

     

    Values that begin with ``aws:`` are reserved. You can't configure a value that uses this prefix.

    

  
  :type Capabilities: dict
  :param Capabilities: 

    The capabilities ( ``audio``, ``video``, or ``content``) that you want to grant an attendee. If you don't specify capabilities, all users have send and receive capabilities on all media channels by default.

     

    .. note::

      

      You use the capabilities with a set of values that control what the capabilities can do, such as ``SendReceive`` data. For more information about those values, see .

      

     

    When using capabilities, be aware of these corner cases:

     

    
    * If you specify ``MeetingFeatures:Video:MaxResolution:None`` when you create a meeting, all API requests that include ``SendReceive``, ``Send``, or ``Receive`` for ``AttendeeCapabilities:Video`` will be rejected with ``ValidationError 400``.
     
    * If you specify ``MeetingFeatures:Content:MaxResolution:None`` when you create a meeting, all API requests that include ``SendReceive``, ``Send``, or ``Receive`` for ``AttendeeCapabilities:Content`` will be rejected with ``ValidationError 400``.
     
    * You can't set ``content`` capabilities to ``SendReceive`` or ``Receive`` unless you also set ``video`` capabilities to ``SendReceive`` or ``Receive``. If you don't set the ``video`` capability to receive, the response will contain an HTTP 400 Bad Request status code. However, you can set your ``video`` capability to receive and you set your ``content`` capability to not receive.
     
    * If meeting features is defined as ``Video:MaxResolution:None`` but ``Content:MaxResolution`` is defined as something other than ``None`` and attendee capabilities are not defined in the API request, then the default attendee video capability is set to ``Receive`` and attendee content capability is set to ``SendReceive``. This is because content ``SendReceive`` requires video to be at least ``Receive``.
     
    * When you change an ``audio`` capability from ``None`` or ``Receive`` to ``Send`` or ``SendReceive`` , and if the attendee left their microphone unmuted, audio will flow from the attendee to the other meeting participants.
     
    * When you change a ``video`` or ``content`` capability from ``None`` or ``Receive`` to ``Send`` or ``SendReceive`` , and if the attendee turned on their video or content streams, remote attendees can receive those streams, but only after media renegotiation between the client and the Amazon Chime back-end server.
    

    

  
    - **Audio** *(string) --* **[REQUIRED]** 

      The audio capability assigned to an attendee.

      

    
    - **Video** *(string) --* **[REQUIRED]** 

      The video capability assigned to an attendee.

      

    
    - **Content** *(string) --* **[REQUIRED]** 

      The content capability assigned to an attendee.

      

    
  
  
  :rtype: dict
  :returns: 
    
    **Response Syntax**

    
    ::

      {
          'Attendee': {
              'ExternalUserId': 'string',
              'AttendeeId': 'string',
              'JoinToken': 'string',
              'Capabilities': {
                  'Audio': 'SendReceive'|'Send'|'Receive'|'None',
                  'Video': 'SendReceive'|'Send'|'Receive'|'None',
                  'Content': 'SendReceive'|'Send'|'Receive'|'None'
              }
          }
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **Attendee** *(dict) --* 

        The attendee information, including attendee ID and join token.

        
        

        - **ExternalUserId** *(string) --* 

          The Amazon Chime SDK external user ID. An idempotency token. Links the attendee to an identity managed by a builder application.

           

          Pattern: ``[-_&@+=,(){}\[\]\/«».:|'"#a-zA-Z0-9À-ÿ\s]*``

           

          Values that begin with ``aws:`` are reserved. You can't configure a value that uses this prefix. Case insensitive.

          
        

        - **AttendeeId** *(string) --* 

          The Amazon Chime SDK attendee ID.

          
        

        - **JoinToken** *(string) --* 

          The join token used by the Amazon Chime SDK attendee.

          
        

        - **Capabilities** *(dict) --* 

          The capabilities assigned to an attendee: audio, video, or content.

           

          .. note::

            

            You use the capabilities with a set of values that control what the capabilities can do, such as ``SendReceive`` data. For more information about those values, see .

            

           

          When using capabilities, be aware of these corner cases:

           

          
          * If you specify ``MeetingFeatures:Video:MaxResolution:None`` when you create a meeting, all API requests that include ``SendReceive``, ``Send``, or ``Receive`` for ``AttendeeCapabilities:Video`` will be rejected with ``ValidationError 400``.
           
          * If you specify ``MeetingFeatures:Content:MaxResolution:None`` when you create a meeting, all API requests that include ``SendReceive``, ``Send``, or ``Receive`` for ``AttendeeCapabilities:Content`` will be rejected with ``ValidationError 400``.
           
          * You can't set ``content`` capabilities to ``SendReceive`` or ``Receive`` unless you also set ``video`` capabilities to ``SendReceive`` or ``Receive``. If you don't set the ``video`` capability to receive, the response will contain an HTTP 400 Bad Request status code. However, you can set your ``video`` capability to receive and you set your ``content`` capability to not receive.
           
          * If meeting features is defined as ``Video:MaxResolution:None`` but ``Content:MaxResolution`` is defined as something other than ``None`` and attendee capabilities are not defined in the API request, then the default attendee video capability is set to ``Receive`` and attendee content capability is set to ``SendReceive``. This is because content ``SendReceive`` requires video to be at least ``Receive``.
           
          * When you change an ``audio`` capability from ``None`` or ``Receive`` to ``Send`` or ``SendReceive`` , and if the attendee left their microphone unmuted, audio will flow from the attendee to the other meeting participants.
           
          * When you change a ``video`` or ``content`` capability from ``None`` or ``Receive`` to ``Send`` or ``SendReceive`` , and if the attendee turned on their video or content streams, remote attendees can receive those streams, but only after media renegotiation between the client and the Amazon Chime back-end server.
          

          
          

          - **Audio** *(string) --* 

            The audio capability assigned to an attendee.

            
          

          - **Video** *(string) --* 

            The video capability assigned to an attendee.

            
          

          - **Content** *(string) --* 

            The content capability assigned to an attendee.

            
      
    
  
  **Exceptions**
  
  *   :py:class:`ChimeSDKMeetings.Client.exceptions.BadRequestException`

  
  *   :py:class:`ChimeSDKMeetings.Client.exceptions.ForbiddenException`

  
  *   :py:class:`ChimeSDKMeetings.Client.exceptions.NotFoundException`

  
  *   :py:class:`ChimeSDKMeetings.Client.exceptions.UnauthorizedException`

  
  *   :py:class:`ChimeSDKMeetings.Client.exceptions.UnprocessableEntityException`

  
  *   :py:class:`ChimeSDKMeetings.Client.exceptions.LimitExceededException`

  
  *   :py:class:`ChimeSDKMeetings.Client.exceptions.ServiceUnavailableException`

  
  *   :py:class:`ChimeSDKMeetings.Client.exceptions.ServiceFailureException`

  
  *   :py:class:`ChimeSDKMeetings.Client.exceptions.ThrottlingException`

  