Skip to content

create_license

create_license(
    license_name: String,
    product_name: String,
    product_sku: String,
    issuer: Issuer,
    home_region: String,
    validity: DatetimeRange,
    entitlements: EntitlementList,
    beneficiary: String,
    consumption_configuration: ConsumptionConfiguration,
    client_token: ClientToken,
    *,
    config_overrides: Optional[LicenseManagerClientConfig] = None,
    license_metadata: Optional[MetadataList] = None,
    tags: Optional[TagList] = None,
) -> CreateLicenseResponse

Creates a license.

Parameters:

  • license_name (String) –

    License name.

  • product_name (String) –

    Product name.

  • product_sku (String) –

    Product SKU.

  • issuer (Issuer) –

    License issuer.

  • home_region (String) –

    Home Region for the license.

  • validity (DatetimeRange) –

    Date and time range during which the license is valid, in ISO8601-UTC format.

  • entitlements (EntitlementList) –

    License entitlements.

  • beneficiary (String) –

    License beneficiary.

  • consumption_configuration (ConsumptionConfiguration) –

    Configuration for consumption of the license. Choose a provisional configuration for workloads running with continuous connectivity. Choose a borrow configuration for workloads with offline usage.

  • license_metadata (Optional[MetadataList], default: None ) –

    Information about the license.

  • client_token (ClientToken) –

    Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

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

    Tags to add to the license. For more information about tagging support in License Manager, see the TagResource operation.

Raises:

Source code in docs_src/capo_license_manager/_services/license_manager.py
def create_license(
    self,
    license_name: "capo_license_manager.types.string.String",
    product_name: "capo_license_manager.types.string.String",
    product_sku: "capo_license_manager.types.string.String",
    issuer: "capo_license_manager.types.issuer.Issuer",
    home_region: "capo_license_manager.types.string.String",
    validity: "capo_license_manager.types.datetime_range.DatetimeRange",
    entitlements: "capo_license_manager.types.entitlement_list.EntitlementList",
    beneficiary: "capo_license_manager.types.string.String",
    consumption_configuration: "capo_license_manager.types.consumption_configuration.ConsumptionConfiguration",
    client_token: "capo_license_manager.types.client_token.ClientToken",
    *,
    config_overrides: Optional[LicenseManagerClientConfig] = None,
    license_metadata: Optional[
        "capo_license_manager.types.metadata_list.MetadataList"
    ] = None,
    tags: Optional["capo_license_manager.types.tag_list.TagList"] = None,
) -> "capo_license_manager.types.create_license_response.CreateLicenseResponse":
    """<p>Creates a license.</p>

    Args:
        license_name: <p>License name.</p>
        product_name: <p>Product name.</p>
        product_sku: <p>Product SKU.</p>
        issuer: <p>License issuer.</p>
        home_region: <p>Home Region for the license.</p>
        validity: <p>Date and time range during which the license is valid, in ISO8601-UTC format.</p>
        entitlements: <p>License entitlements.</p>
        beneficiary: <p>License beneficiary.</p>
        consumption_configuration: <p>Configuration for consumption of the license. Choose a provisional configuration for workloads running with continuous connectivity. Choose a borrow configuration for workloads with offline usage.</p>
        license_metadata: <p>Information about the license.</p>
        client_token: <p>Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.</p>
        tags: <p>Tags to add to the license. For more information about tagging support in License Manager, see the <a href="https://docs.aws.amazon.com/license-manager/latest/APIReference/API_TagResource.html">TagResource</a> operation.</p>

    Raises:
        capo_license_manager.errors.access_denied_exception.AccessDeniedException: <p>Access to resource denied.</p>
        capo_license_manager.errors.authorization_exception.AuthorizationException: <p>The Amazon Web Services user account does not have permission to perform the action. Check the IAM policy associated with this account.</p>
        capo_license_manager.errors.invalid_parameter_value_exception.InvalidParameterValueException: <p>One or more parameter values are not valid.</p>
        capo_license_manager.errors.rate_limit_exceeded_exception.RateLimitExceededException: <p>Too many requests have been submitted. Try again after a brief wait.</p>
        capo_license_manager.errors.redirect_exception.RedirectException: <p>This is not the correct Region for the resource. Try again.</p>
        capo_license_manager.errors.server_internal_exception.ServerInternalException: <p>The server experienced an internal error. Try again.</p>
        capo_license_manager.errors.validation_exception.ValidationException: <p>The provided input is not valid. Try your request again.</p>
        capo_license_manager.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    def _handler(
        req: "OperationRequest[capo_license_manager.types.create_license_request.CreateLicenseRequest]",
    ) -> OperationResponse[
        "capo_license_manager.types.create_license_response.CreateLicenseResponse"
    ]:
        import capo_license_manager._operations.aws_license_manager.create_license

        output, http_response = (
            capo_license_manager._operations.aws_license_manager.create_license.create_license(
                req.options, req.input
            )
        )
        return OperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("CreateLicense")
    )
    input_: capo_license_manager.types.create_license_request.CreateLicenseRequest = {
        "license_name": license_name,
        "product_name": product_name,
        "product_sku": product_sku,
        "issuer": issuer,
        "home_region": home_region,
        "validity": validity,
        "entitlements": entitlements,
        "beneficiary": beneficiary,
        "consumption_configuration": consumption_configuration,
        "client_token": client_token,
    }
    if license_metadata is not None:
        input_["license_metadata"] = license_metadata
    if tags is not None:
        input_["tags"] = tags

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