Skip to content

create_asset async

create_asset(
    *,
    config_overrides: Optional[AsyncMediaPackageVodClientConfig] = None,
    id: Optional[__string] = None,
    packaging_group_id: Optional[__string] = None,
    resource_id: Optional[__string] = None,
    source_arn: Optional[__string] = None,
    source_role_arn: Optional[__string] = None,
    tags: Optional[Tags] = None,
) -> CreateAssetResponse

Creates a new MediaPackage VOD Asset resource.

Parameters:

  • id (Optional[__string], default: None ) –

    The unique identifier for the Asset.

  • packaging_group_id (Optional[__string], default: None ) –

    The ID of the PackagingGroup for the Asset.

  • resource_id (Optional[__string], default: None ) –

    The resource ID to include in SPEKE key requests.

  • source_arn (Optional[__string], default: None ) –

    ARN of the source object in S3.

  • source_role_arn (Optional[__string], default: None ) –

    The IAM role ARN used to access the source S3 bucket.

Raises:

Source code in docs_src/capo_mediapackage_vod/_services/async_media_package_vod.py
async def create_asset(
    self,
    *,
    config_overrides: Optional[AsyncMediaPackageVodClientConfig] = None,
    id: Optional["capo_mediapackage_vod.types.__string.__string"] = None,
    packaging_group_id: Optional[
        "capo_mediapackage_vod.types.__string.__string"
    ] = None,
    resource_id: Optional["capo_mediapackage_vod.types.__string.__string"] = None,
    source_arn: Optional["capo_mediapackage_vod.types.__string.__string"] = None,
    source_role_arn: Optional[
        "capo_mediapackage_vod.types.__string.__string"
    ] = None,
    tags: Optional["capo_mediapackage_vod.types.tags.Tags"] = None,
) -> "capo_mediapackage_vod.types.create_asset_response.CreateAssetResponse":
    """Creates a new MediaPackage VOD Asset resource.

    Args:
        id: The unique identifier for the Asset.
        packaging_group_id: The ID of the PackagingGroup for the Asset.
        resource_id: The resource ID to include in SPEKE key requests.
        source_arn: ARN of the source object in S3.
        source_role_arn: The IAM role ARN used to access the source S3 bucket.

    Raises:
        capo_mediapackage_vod.errors.forbidden_exception.ForbiddenException: The client is not authorized to access the requested resource.
        capo_mediapackage_vod.errors.internal_server_error_exception.InternalServerErrorException: An unexpected error occurred.
        capo_mediapackage_vod.errors.not_found_exception.NotFoundException: The requested resource does not exist.
        capo_mediapackage_vod.errors.service_unavailable_exception.ServiceUnavailableException: An unexpected error occurred.
        capo_mediapackage_vod.errors.too_many_requests_exception.TooManyRequestsException: The client has exceeded their resource or throttling limits.
        capo_mediapackage_vod.errors.unprocessable_entity_exception.UnprocessableEntityException: The parameters sent in the request are not valid.
        capo_mediapackage_vod.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_mediapackage_vod.types.create_asset_request.CreateAssetRequest]",
    ) -> AsyncOperationResponse[
        "capo_mediapackage_vod.types.create_asset_response.CreateAssetResponse"
    ]:
        import capo_mediapackage_vod._operations.media_package_vod.create_asset

        (
            output,
            http_response,
        ) = await capo_mediapackage_vod._operations.media_package_vod.create_asset.async_create_asset(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("CreateAsset")
    )
    input_: capo_mediapackage_vod.types.create_asset_request.CreateAssetRequest = {}
    if id is not None:
        input_["id"] = id
    if packaging_group_id is not None:
        input_["packaging_group_id"] = packaging_group_id
    if resource_id is not None:
        input_["resource_id"] = resource_id
    if source_arn is not None:
        input_["source_arn"] = source_arn
    if source_role_arn is not None:
        input_["source_role_arn"] = source_role_arn
    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