Skip to content

create_data_provider async

create_data_provider(
    engine: String,
    settings: DataProviderSettings,
    *,
    config_overrides: Optional[AsyncDatabaseMigrationServiceClientConfig] = None,
    data_provider_name: Optional[String] = None,
    description: Optional[String] = None,
    virtual: Optional[BooleanOptional] = None,
    tags: Optional[TagList] = None,
) -> CreateDataProviderResponse

Creates a data provider using the provided settings. A data provider stores a data store type and location information about your database.

Required permissions: dms:CreateDataProvider. For more information, see Actions, resources, and condition keys for Database Migration Service.

Parameters:

  • data_provider_name (Optional[String], default: None ) –

    A user-friendly name for the data provider.

  • description (Optional[String], default: None ) –

    A user-friendly description of the data provider.

  • engine (String) –

    The type of database engine for the data provider.

    Valid values: aurora, aurora-postgresql, db2, db2-zos, docdb, mariadb, mongodb, mysql, oracle, postgres, redshift, sqlserver, and sybase. A value of aurora represents Amazon Aurora MySQL-Compatible Edition.

  • virtual (Optional[BooleanOptional], default: None ) –

    Indicates whether the data provider is virtual.

  • settings (DataProviderSettings) –

    The settings in JSON format for a data provider.

  • tags (Optional[TagList], default: None ) –

    One or more tags to be assigned to the data provider.

Raises:

Examples:

Create a Microsoft SQL Server data provider The following example creates a Microsoft SQL Server data provider.

>>> await client.create_data_provider(data_provider_name='example-data-provider', engine='sqlserver', description='Example data provider for documentation', settings={'MicrosoftSqlServerSettings': {'ServerName': 'example-source-server.us-east-1.rds.amazonaws.com', 'Port': 1433, 'DatabaseName': 'ExampleDatabase', 'SslMode': 'verify-full', 'CertificateArn': 'arn:aws:dms:us-east-1:111122223333:cert:EXAMPLEABCDEFGHIJKLMNOPQRS'}})
Source code in docs_src/capo_database_migration_service/_services/async_database_migration_service.py
async def create_data_provider(
    self,
    engine: "capo_database_migration_service.types.string.String",
    settings: "capo_database_migration_service.types.data_provider_settings.DataProviderSettings",
    *,
    config_overrides: Optional[AsyncDatabaseMigrationServiceClientConfig] = None,
    data_provider_name: Optional[
        "capo_database_migration_service.types.string.String"
    ] = None,
    description: Optional[
        "capo_database_migration_service.types.string.String"
    ] = None,
    virtual: Optional[
        "capo_database_migration_service.types.boolean_optional.BooleanOptional"
    ] = None,
    tags: Optional["capo_database_migration_service.types.tag_list.TagList"] = None,
) -> "capo_database_migration_service.types.create_data_provider_response.CreateDataProviderResponse":
    """<p>Creates a data provider using the provided settings. A data provider stores a data store type and location information about your database. </p> <p> <b>Required permissions:</b> <code>dms:CreateDataProvider</code>. For more information, see <a href="https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsdatabasemigrationservice.html">Actions, resources, and condition keys for Database Migration Service</a>.</p>

    Args:
        data_provider_name: <p>A user-friendly name for the data provider.</p>
        description: <p>A user-friendly description of the data provider.</p>
        engine: <p>The type of database engine for the data provider.</p> <p>Valid values: <code>aurora</code>, <code>aurora-postgresql</code>, <code>db2</code>, <code>db2-zos</code>, <code>docdb</code>, <code>mariadb</code>, <code>mongodb</code>, <code>mysql</code>, <code>oracle</code>, <code>postgres</code>, <code>redshift</code>, <code>sqlserver</code>, and <code>sybase</code>. A value of <code>aurora</code> represents Amazon Aurora MySQL-Compatible Edition.</p>
        virtual: <p>Indicates whether the data provider is virtual.</p>
        settings: <p>The settings in JSON format for a data provider.</p>
        tags: <p>One or more tags to be assigned to the data provider.</p>

    Raises:
        capo_database_migration_service.errors.access_denied_fault.AccessDeniedFault: <p>DMS was denied access to the endpoint. Check that the role is correctly configured.</p>
        capo_database_migration_service.errors.failed_dependency_fault.FailedDependencyFault: <p>A dependency threw an exception.</p>
        capo_database_migration_service.errors.resource_already_exists_fault.ResourceAlreadyExistsFault: <p>The resource you are attempting to create already exists.</p>
        capo_database_migration_service.errors.resource_quota_exceeded_fault.ResourceQuotaExceededFault: <p>The quota for this resource quota has been exceeded.</p>
        capo_database_migration_service.errors.UnknownServiceError: The service returned an error code this client does not model.

    Examples:
        Create a Microsoft SQL Server data provider
        The following example creates a Microsoft SQL Server data provider.

        >>> await client.create_data_provider(data_provider_name='example-data-provider', engine='sqlserver', description='Example data provider for documentation', settings={'MicrosoftSqlServerSettings': {'ServerName': 'example-source-server.us-east-1.rds.amazonaws.com', 'Port': 1433, 'DatabaseName': 'ExampleDatabase', 'SslMode': 'verify-full', 'CertificateArn': 'arn:aws:dms:us-east-1:111122223333:cert:EXAMPLEABCDEFGHIJKLMNOPQRS'}})
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_database_migration_service.types.create_data_provider_message.CreateDataProviderMessage]",
    ) -> AsyncOperationResponse[
        "capo_database_migration_service.types.create_data_provider_response.CreateDataProviderResponse"
    ]:
        import capo_database_migration_service._operations.amazon_dm_sv20160101.create_data_provider

        (
            output,
            http_response,
        ) = await capo_database_migration_service._operations.amazon_dm_sv20160101.create_data_provider.async_create_data_provider(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("CreateDataProvider")
    )
    input_: capo_database_migration_service.types.create_data_provider_message.CreateDataProviderMessage = {
        "engine": engine,
        "settings": settings,
    }
    if data_provider_name is not None:
        input_["data_provider_name"] = data_provider_name
    if description is not None:
        input_["description"] = description
    if virtual is not None:
        input_["virtual"] = virtual
    if tags is not None:
        input_["tags"] = tags

    response = await aexecute_pipeline(
        AsyncOperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    await response.response.aclose()
    return response.output