Skip to content

start_asset_bundle_export_job

start_asset_bundle_export_job(
    aws_account_id: AwsAccountId,
    asset_bundle_export_job_id: ShortRestrictiveResourceId,
    resource_arns: AssetBundleResourceArns,
    export_format: AssetBundleExportFormat,
    *,
    config_overrides: Optional[QuickSightClientConfig] = None,
    include_all_dependencies: Optional[Boolean] = None,
    cloud_formation_override_property_configuration: Optional[
        AssetBundleCloudFormationOverridePropertyConfiguration
    ] = None,
    include_permissions: Optional[Boolean] = None,
    include_tags: Optional[Boolean] = None,
    validation_strategy: Optional[AssetBundleExportJobValidationStrategy] = None,
    include_folder_memberships: Optional[Boolean] = None,
    include_folder_members: Optional[IncludeFolderMembers] = None,
) -> StartAssetBundleExportJobResponse

Starts an Asset Bundle export job.

An Asset Bundle export job exports specified Amazon Quick Sight assets. You can also choose to export any asset dependencies in the same job. Export jobs run asynchronously and can be polled with a DescribeAssetBundleExportJob API call. When a job is successfully completed, a download URL that contains the exported assets is returned. The URL is valid for 5 minutes and can be refreshed with a DescribeAssetBundleExportJob API call. Each Amazon Quick Sight account can run up to 5 export jobs concurrently.

The API caller must have the necessary permissions in their IAM role to access each resource before the resources can be exported.

Parameters:

  • aws_account_id (AwsAccountId) –

    The ID of the Amazon Web Services account to export assets from.

  • asset_bundle_export_job_id (ShortRestrictiveResourceId) –

    The ID of the job. This ID is unique while the job is running. After the job is completed, you can reuse this ID for another job.

  • resource_arns (AssetBundleResourceArns) –

    An array of resource ARNs to export. The following resources are supported.

    • Analysis

    • Dashboard

    • DataSet

    • DataSource

    • RefreshSchedule

    • Theme

    • VPCConnection

    The API caller must have the necessary permissions in their IAM role to access each resource before the resources can be exported.

  • include_all_dependencies (Optional[Boolean], default: None ) –

    A Boolean that determines whether all dependencies of each resource ARN are recursively exported with the job. For example, say you provided a Dashboard ARN to the ResourceArns parameter. If you set IncludeAllDependencies to TRUE, any theme, dataset, and data source resource that is a dependency of the dashboard is also exported.

  • export_format (AssetBundleExportFormat) –

    The export data format.

  • cloud_formation_override_property_configuration (Optional[AssetBundleCloudFormationOverridePropertyConfiguration], default: None ) –

    An optional collection of structures that generate CloudFormation parameters to override the existing resource property values when the resource is exported to a new CloudFormation template.

    Use this field if the ExportFormat field of a StartAssetBundleExportJobRequest API call is set to CLOUDFORMATION_JSON.

  • include_permissions (Optional[Boolean], default: None ) –

    A Boolean that determines whether all permissions for each resource ARN are exported with the job. If you set IncludePermissions to TRUE, any permissions associated with each resource are exported.

  • include_tags (Optional[Boolean], default: None ) –

    A Boolean that determines whether all tags for each resource ARN are exported with the job. If you set IncludeTags to TRUE, any tags associated with each resource are exported.

  • validation_strategy (Optional[AssetBundleExportJobValidationStrategy], default: None ) –

    An optional parameter that determines which validation strategy to use for the export job. If StrictModeForAllResources is set to TRUE, strict validation for every error is enforced. If it is set to FALSE, validation is skipped for specific UI errors that are shown as warnings. The default value for StrictModeForAllResources is FALSE.

  • include_folder_memberships (Optional[Boolean], default: None ) –

    A Boolean that determines if the exported asset carries over information about the folders that the asset is a member of.

  • include_folder_members (Optional[IncludeFolderMembers], default: None ) –

    A setting that indicates whether you want to include folder assets. You can also use this setting to recusrsively include all subfolders of an exported folder.

Raises:

  • AccessDeniedException –

    You don't have access to this item. The provided credentials couldn't be validated. You might not be authorized to carry out the request. Make sure that your account is authorized to use the Amazon Quick Sight service, that your policies have the correct permissions, and that you are using the correct credentials.

  • ConflictException –

    Updating or deleting a resource can cause an inconsistent state.

  • InvalidParameterValueException –

    One or more parameters has a value that isn't valid.

  • LimitExceededException –

    A limit is exceeded.

  • ResourceNotFoundException –

    One or more resources can't be found.

  • ThrottlingException –

    Access is throttled.

  • UnsupportedUserEditionException –

    This error indicates that you are calling an operation on an Amazon Quick Suite subscription where the edition doesn't include support for that operation. Amazon Quick Suite currently has Standard Edition and Enterprise Edition. Not every operation and capability is available in every edition.

  • UnknownServiceError –

    The service returned an error code this client does not model.

Source code in docs_src/capo_quicksight/_services/quick_sight.py
def start_asset_bundle_export_job(
    self,
    aws_account_id: "capo_quicksight.types.aws_account_id.AwsAccountId",
    asset_bundle_export_job_id: "capo_quicksight.types.short_restrictive_resource_id.ShortRestrictiveResourceId",
    resource_arns: "capo_quicksight.types.asset_bundle_resource_arns.AssetBundleResourceArns",
    export_format: "capo_quicksight.types.asset_bundle_export_format.AssetBundleExportFormat",
    *,
    config_overrides: Optional[QuickSightClientConfig] = None,
    include_all_dependencies: Optional[
        "capo_quicksight.types.boolean.Boolean"
    ] = None,
    cloud_formation_override_property_configuration: Optional[
        "capo_quicksight.types.asset_bundle_cloud_formation_override_property_configuration.AssetBundleCloudFormationOverridePropertyConfiguration"
    ] = None,
    include_permissions: Optional["capo_quicksight.types.boolean.Boolean"] = None,
    include_tags: Optional["capo_quicksight.types.boolean.Boolean"] = None,
    validation_strategy: Optional[
        "capo_quicksight.types.asset_bundle_export_job_validation_strategy.AssetBundleExportJobValidationStrategy"
    ] = None,
    include_folder_memberships: Optional[
        "capo_quicksight.types.boolean.Boolean"
    ] = None,
    include_folder_members: Optional[
        "capo_quicksight.types.include_folder_members.IncludeFolderMembers"
    ] = None,
) -> "capo_quicksight.types.start_asset_bundle_export_job_response.StartAssetBundleExportJobResponse":
    """<p>Starts an Asset Bundle export job.</p> <p>An Asset Bundle export job exports specified Amazon Quick Sight assets. You can also choose to export any asset dependencies in the same job. Export jobs run asynchronously and can be polled with a <code>DescribeAssetBundleExportJob</code> API call. When a job is successfully completed, a download URL that contains the exported assets is returned. The URL is valid for 5 minutes and can be refreshed with a <code>DescribeAssetBundleExportJob</code> API call. Each Amazon Quick Sight account can run up to 5 export jobs concurrently.</p> <p>The API caller must have the necessary permissions in their IAM role to access each resource before the resources can be exported.</p>

    Args:
        aws_account_id: <p>The ID of the Amazon Web Services account to export assets from.</p>
        asset_bundle_export_job_id: <p>The ID of the job. This ID is unique while the job is running. After the job is completed, you can reuse this ID for another job.</p>
        resource_arns: <p>An array of resource ARNs to export. The following resources are supported.</p> <ul> <li> <p> <code>Analysis</code> </p> </li> <li> <p> <code>Dashboard</code> </p> </li> <li> <p> <code>DataSet</code> </p> </li> <li> <p> <code>DataSource</code> </p> </li> <li> <p> <code>RefreshSchedule</code> </p> </li> <li> <p> <code>Theme</code> </p> </li> <li> <p> <code>VPCConnection</code> </p> </li> </ul> <p>The API caller must have the necessary permissions in their IAM role to access each resource before the resources can be exported.</p>
        include_all_dependencies: <p>A Boolean that determines whether all dependencies of each resource ARN are recursively exported with the job. For example, say you provided a Dashboard ARN to the <code>ResourceArns</code> parameter. If you set <code>IncludeAllDependencies</code> to <code>TRUE</code>, any theme, dataset, and data source resource that is a dependency of the dashboard is also exported.</p>
        export_format: <p>The export data format.</p>
        cloud_formation_override_property_configuration: <p>An optional collection of structures that generate CloudFormation parameters to override the existing resource property values when the resource is exported to a new CloudFormation template.</p> <p>Use this field if the <code>ExportFormat</code> field of a <code>StartAssetBundleExportJobRequest</code> API call is set to <code>CLOUDFORMATION_JSON</code>.</p>
        include_permissions: <p>A Boolean that determines whether all permissions for each resource ARN are exported with the job. If you set <code>IncludePermissions</code> to <code>TRUE</code>, any permissions associated with each resource are exported. </p>
        include_tags: <p> A Boolean that determines whether all tags for each resource ARN are exported with the job. If you set <code>IncludeTags</code> to <code>TRUE</code>, any tags associated with each resource are exported.</p>
        validation_strategy: <p>An optional parameter that determines which validation strategy to use for the export job. If <code>StrictModeForAllResources</code> is set to <code>TRUE</code>, strict validation for every error is enforced. If it is set to <code>FALSE</code>, validation is skipped for specific UI errors that are shown as warnings. The default value for <code>StrictModeForAllResources</code> is <code>FALSE</code>.</p>
        include_folder_memberships: <p>A Boolean that determines if the exported asset carries over information about the folders that the asset is a member of. </p>
        include_folder_members: <p>A setting that indicates whether you want to include folder assets. You can also use this setting to recusrsively include all subfolders of an exported folder.</p>

    Raises:
        capo_quicksight.errors.access_denied_exception.AccessDeniedException: <p>You don't have access to this item. The provided credentials couldn't be validated. You might not be authorized to carry out the request. Make sure that your account is authorized to use the Amazon Quick Sight service, that your policies have the correct permissions, and that you are using the correct credentials.</p>
        capo_quicksight.errors.conflict_exception.ConflictException: <p>Updating or deleting a resource can cause an inconsistent state.</p>
        capo_quicksight.errors.invalid_parameter_value_exception.InvalidParameterValueException: <p>One or more parameters has a value that isn't valid.</p>
        capo_quicksight.errors.limit_exceeded_exception.LimitExceededException: <p>A limit is exceeded.</p>
        capo_quicksight.errors.resource_not_found_exception.ResourceNotFoundException: <p>One or more resources can't be found.</p>
        capo_quicksight.errors.throttling_exception.ThrottlingException: <p>Access is throttled.</p>
        capo_quicksight.errors.unsupported_user_edition_exception.UnsupportedUserEditionException: <p>This error indicates that you are calling an operation on an Amazon Quick Suite subscription where the edition doesn't include support for that operation. Amazon Quick Suite currently has Standard Edition and Enterprise Edition. Not every operation and capability is available in every edition.</p>
        capo_quicksight.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    def _handler(
        req: "OperationRequest[capo_quicksight.types.start_asset_bundle_export_job_request.StartAssetBundleExportJobRequest]",
    ) -> OperationResponse[
        "capo_quicksight.types.start_asset_bundle_export_job_response.StartAssetBundleExportJobResponse"
    ]:
        import capo_quicksight._operations.quick_sight_20180401.start_asset_bundle_export_job

        output, http_response = (
            capo_quicksight._operations.quick_sight_20180401.start_asset_bundle_export_job.start_asset_bundle_export_job(
                req.options, req.input
            )
        )
        return OperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("StartAssetBundleExportJob")
    )
    input_: capo_quicksight.types.start_asset_bundle_export_job_request.StartAssetBundleExportJobRequest = {
        "aws_account_id": aws_account_id,
        "asset_bundle_export_job_id": asset_bundle_export_job_id,
        "resource_arns": resource_arns,
        "export_format": export_format,
    }
    if include_all_dependencies is not None:
        input_["include_all_dependencies"] = include_all_dependencies
    if cloud_formation_override_property_configuration is not None:
        input_["cloud_formation_override_property_configuration"] = (
            cloud_formation_override_property_configuration
        )
    if include_permissions is not None:
        input_["include_permissions"] = include_permissions
    if include_tags is not None:
        input_["include_tags"] = include_tags
    if validation_strategy is not None:
        input_["validation_strategy"] = validation_strategy
    if include_folder_memberships is not None:
        input_["include_folder_memberships"] = include_folder_memberships
    if include_folder_members is not None:
        input_["include_folder_members"] = include_folder_members

    response = execute_pipeline(
        OperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    response.response.close()
    return response.output