:doc:`LexModelBuildingService <../../lex-models>` / Client / start_migration

***************
start_migration
***************



.. py:method:: LexModelBuildingService.Client.start_migration(**kwargs)

  

  Starts migrating a bot from Amazon Lex V1 to Amazon Lex V2. Migrate your bot when you want to take advantage of the new features of Amazon Lex V2.

   

  For more information, see `Migrating a bot <https://docs.aws.amazon.com/lex/latest/dg/migrate.html>`__ in the *Amazon Lex developer guide*.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/lex-models-2017-04-19/StartMigration>`_  


  **Request Syntax**
  ::

    response = client.start_migration(
        v1BotName='string',
        v1BotVersion='string',
        v2BotName='string',
        v2BotRole='string',
        migrationStrategy='CREATE_NEW'|'UPDATE_EXISTING'
    )
    
  :type v1BotName: string
  :param v1BotName: **[REQUIRED]** 

    The name of the Amazon Lex V1 bot that you are migrating to Amazon Lex V2.

    

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

    The version of the bot to migrate to Amazon Lex V2. You can migrate the ``$LATEST`` version as well as any numbered version.

    

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

    The name of the Amazon Lex V2 bot that you are migrating the Amazon Lex V1 bot to.

     

    
    * If the Amazon Lex V2 bot doesn't exist, you must use the ``CREATE_NEW`` migration strategy.
     
    * If the Amazon Lex V2 bot exists, you must use the ``UPDATE_EXISTING`` migration strategy to change the contents of the Amazon Lex V2 bot.
    

    

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

    The IAM role that Amazon Lex uses to run the Amazon Lex V2 bot.

    

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

    The strategy used to conduct the migration.

     

    
    * ``CREATE_NEW`` - Creates a new Amazon Lex V2 bot and migrates the Amazon Lex V1 bot to the new bot.
     
    * ``UPDATE_EXISTING`` - Overwrites the existing Amazon Lex V2 bot metadata and the locale being migrated. It doesn't change any other locales in the Amazon Lex V2 bot. If the locale doesn't exist, a new locale is created in the Amazon Lex V2 bot.
    

    

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

    
    ::

      {
          'v1BotName': 'string',
          'v1BotVersion': 'string',
          'v1BotLocale': 'de-DE'|'en-AU'|'en-GB'|'en-IN'|'en-US'|'es-419'|'es-ES'|'es-US'|'fr-FR'|'fr-CA'|'it-IT'|'ja-JP'|'ko-KR',
          'v2BotId': 'string',
          'v2BotRole': 'string',
          'migrationId': 'string',
          'migrationStrategy': 'CREATE_NEW'|'UPDATE_EXISTING',
          'migrationTimestamp': datetime(2015, 1, 1)
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **v1BotName** *(string) --* 

        The name of the Amazon Lex V1 bot that you are migrating to Amazon Lex V2.

        
      

      - **v1BotVersion** *(string) --* 

        The version of the bot to migrate to Amazon Lex V2.

        
      

      - **v1BotLocale** *(string) --* 

        The locale used for the Amazon Lex V1 bot.

        
      

      - **v2BotId** *(string) --* 

        The unique identifier for the Amazon Lex V2 bot.

        
      

      - **v2BotRole** *(string) --* 

        The IAM role that Amazon Lex uses to run the Amazon Lex V2 bot.

        
      

      - **migrationId** *(string) --* 

        The unique identifier that Amazon Lex assigned to the migration.

        
      

      - **migrationStrategy** *(string) --* 

        The strategy used to conduct the migration.

        
      

      - **migrationTimestamp** *(datetime) --* 

        The date and time that the migration started.

        
  
  **Exceptions**
  
  *   :py:class:`LexModelBuildingService.Client.exceptions.LimitExceededException`

  
  *   :py:class:`LexModelBuildingService.Client.exceptions.InternalFailureException`

  
  *   :py:class:`LexModelBuildingService.Client.exceptions.BadRequestException`

  
  *   :py:class:`LexModelBuildingService.Client.exceptions.AccessDeniedException`

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

  