Module Smaws_Client_BCMPricingCalculator.Types

type nonrec workload_estimate_usage_quantity = {
  1. amount : Smaws_Lib.Smithy_api.Types.double option;
    (*

    The numeric value of the usage quantity.

    *)
  2. unit_ : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    The unit of measurement for the usage quantity.

    *)
}

Represents a usage quantity for a workload estimate.

type nonrec workload_estimate_usage_max_results = int
type nonrec service_code = string
type nonrec usage_type = string
type nonrec operation = string
type nonrec resource_id = string
type nonrec account_id = string
type nonrec usage_group = string
type nonrec currency_code =
  1. | USD
type nonrec workload_estimate_cost_status =
  1. | STALE
  2. | INVALID
  3. | VALID
type nonrec bill_interval = {
  1. end_ : Smaws_Lib.Smithy_api.Types.timestamp option;
    (*

    The end date and time of the interval.

    *)
  2. start : Smaws_Lib.Smithy_api.Types.timestamp option;
    (*

    The start date and time of the interval.

    *)
}

Represents a time interval for a bill or estimate.

type nonrec string_list = Smaws_Lib.Smithy_api.Types.string_ list
type nonrec expression_filter = {
  1. values : string_list option;
    (*

    The values to match against.

    *)
  2. match_options : string_list option;
    (*

    The match options for the filter (e.g., equals, contains).

    *)
  3. key : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    The key or attribute to filter on.

    *)
}

Represents a filter used within an expression.

type expression = {
  1. tags : expression_filter option;
    (*

    Filters based on resource tags.

    *)
  2. dimensions : expression_filter option;
    (*

    Filters based on dimensions (e.g., service, operation).

    *)
  3. cost_categories : expression_filter option;
    (*

    Filters based on cost categories.

    *)
  4. not : expression option;
    (*

    An expression to be negated.

    *)
  5. or : expression_list option;
    (*

    A list of expressions to be combined with OR logic.

    *)
  6. and_ : expression_list option;
    (*

    A list of expressions to be combined with AND logic.

    *)
}

Represents a complex filtering expression for cost and usage data.

and expression_list = expression list
type nonrec historical_usage_entity = {
  1. filter_expression : expression;
    (*

    An optional filter expression to apply to the historical usage data.

    *)
  2. bill_interval : bill_interval;
    (*

    The time interval for the historical usage data.

    *)
  3. usage_account_id : account_id;
    (*

    The Amazon Web Services account ID associated with the usage.

    *)
  4. location : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    The location associated with the usage.

    *)
  5. operation : operation;
    (*

    The specific operation associated with the usage.

    *)
  6. usage_type : usage_type;
    (*

    The type of usage.

    *)
  7. service_code : service_code;
    (*

    The Amazon Web Services service code associated with the usage.

    *)
}

Represents historical usage data for a specific entity.

type nonrec workload_estimate_usage_item = {
  1. historical_usage : historical_usage_entity option;
    (*

    Historical usage data associated with this item, if available.

    *)
  2. status : workload_estimate_cost_status option;
    (*

    The current status of this usage item.

    *)
  3. currency : currency_code option;
    (*

    The currency of the estimated cost.

    *)
  4. cost : Smaws_Lib.Smithy_api.Types.double option;
    (*

    The estimated cost for this usage item.

    *)
  5. quantity : workload_estimate_usage_quantity option;
    (*

    The estimated usage quantity for this item.

    *)
  6. group : usage_group option;
    (*

    The group identifier for this usage item.

    *)
  7. usage_account_id : account_id option;
    (*

    The Amazon Web Services account ID associated with this usage item.

    *)
  8. id : resource_id option;
    (*

    The unique identifier of this usage item.

    *)
  9. location : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    The location associated with this usage item.

    *)
  10. operation : operation;
    (*

    The specific operation associated with this usage item.

    *)
  11. usage_type : usage_type;
    (*

    The type of usage for this item.

    *)
  12. service_code : service_code;
    (*

    The Amazon Web Services service code associated with this usage item.

    *)
}

Represents a usage item in a workload estimate.

type nonrec workload_estimate_usage_items = workload_estimate_usage_item list
type nonrec workload_estimate_usage = Smaws_Lib.CoreTypes.Resource.t
type nonrec workload_estimate_update_usage_error_code =
  1. | INTERNAL_SERVER_ERROR
  2. | CONFLICT
  3. | NOT_FOUND
  4. | BAD_REQUEST
type nonrec workload_estimate_name = string
type nonrec workload_estimate_rate_type =
  1. | AFTER_DISCOUNTS_AND_COMMITMENTS
  2. | AFTER_DISCOUNTS
  3. | BEFORE_DISCOUNTS
type nonrec workload_estimate_status =
  1. | ACTION_NEEDED
  2. | INVALID
  3. | VALID
  4. | UPDATING
type nonrec workload_estimate_summary = {
  1. failure_message : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    An error message if the workload estimate creation or processing failed.

    *)
  2. cost_currency : currency_code option;
    (*

    The currency of the estimated cost.

    *)
  3. total_cost : Smaws_Lib.Smithy_api.Types.double option;
    (*

    The total estimated cost for the workload.

    *)
  4. status : workload_estimate_status option;
    (*

    The current status of the workload estimate.

    *)
  5. rate_timestamp : Smaws_Lib.Smithy_api.Types.timestamp option;
    (*

    The timestamp of the pricing rates used for the estimate.

    *)
  6. rate_type : workload_estimate_rate_type option;
    (*

    The type of pricing rates used for the estimate.

    *)
  7. expires_at : Smaws_Lib.Smithy_api.Types.timestamp option;
    (*

    The timestamp when the workload estimate will expire.

    *)
  8. created_at : Smaws_Lib.Smithy_api.Types.timestamp option;
    (*

    The timestamp when the workload estimate was created.

    *)
  9. name : workload_estimate_name option;
    (*

    The name of the workload estimate.

    *)
  10. id : resource_id;
    (*

    The unique identifier of the workload estimate.

    *)
}

Provides a summary of a workload estimate.

type nonrec workload_estimate_summaries = workload_estimate_summary list
type nonrec workload_estimate = Smaws_Lib.CoreTypes.Resource.t
type nonrec validation_exception_reason =
  1. | OTHER
  2. | DISALLOWED_RATE
  3. | INVALID_REQUEST_FROM_MEMBER
  4. | FIELD_VALIDATION_FAILED
  5. | CANNOT_PARSE
  6. | UNKNOWN_OPERATION
type nonrec validation_exception_field = {
  1. message : Smaws_Lib.Smithy_api.Types.string_;
    (*

    The error message describing why the field failed validation.

    *)
  2. name : Smaws_Lib.Smithy_api.Types.string_;
    (*

    The name of the field that failed validation.

    *)
}

Represents a field that failed validation in a request.

type nonrec validation_exception_field_list = validation_exception_field list
type nonrec validation_exception = {
  1. field_list : validation_exception_field_list option;
    (*

    The list of fields that are invalid.

    *)
  2. reason : validation_exception_reason option;
    (*

    The reason for the validation exception.

    *)
  3. message : Smaws_Lib.Smithy_api.Types.string_;
}

The input provided fails to satisfy the constraints specified by an Amazon Web Services service.

type nonrec uuid = string
type nonrec usage_quantity_result = {
  1. unit_ : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    The unit of measurement for the usage quantity result.

    *)
  2. amount : Smaws_Lib.Smithy_api.Types.double option;
    (*

    The numeric value of the usage quantity result.

    *)
}

Represents the result of a usage quantity calculation.

type nonrec usage_quantity = {
  1. amount : Smaws_Lib.Smithy_api.Types.double option;
    (*

    The numeric value of the usage quantity.

    *)
  2. unit_ : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    The unit of measurement for the usage quantity.

    *)
  3. start_hour : Smaws_Lib.Smithy_api.Types.timestamp option;
    (*

    The start hour of the usage period.

    *)
}

Represents a usage quantity with associated unit and time period.

type nonrec usage_quantities = usage_quantity list
type nonrec usage_amount = {
  1. amount : Smaws_Lib.Smithy_api.Types.double;
    (*

    The usage amount for the period.

    *)
  2. start_hour : Smaws_Lib.Smithy_api.Types.timestamp;
    (*

    The start hour of the usage period.

    *)
}

Represents a usage amount for a specific time period.

type nonrec usage_amounts = usage_amount list
type nonrec update_workload_estimate_response = {
  1. failure_message : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    An error message if the workload estimate update failed.

    *)
  2. cost_currency : currency_code option;
    (*

    The currency of the updated estimated cost.

    *)
  3. total_cost : Smaws_Lib.Smithy_api.Types.double option;
    (*

    The updated total estimated cost for the workload.

    *)
  4. status : workload_estimate_status option;
    (*

    The current status of the updated workload estimate.

    *)
  5. rate_timestamp : Smaws_Lib.Smithy_api.Types.timestamp option;
    (*

    The timestamp of the pricing rates used for the updated estimate.

    *)
  6. rate_type : workload_estimate_rate_type option;
    (*

    The type of pricing rates used for the updated estimate.

    *)
  7. expires_at : Smaws_Lib.Smithy_api.Types.timestamp option;
    (*

    The updated expiration timestamp for the workload estimate.

    *)
  8. created_at : Smaws_Lib.Smithy_api.Types.timestamp option;
    (*

    The timestamp when the workload estimate was originally created.

    *)
  9. name : workload_estimate_name option;
    (*

    The updated name of the workload estimate.

    *)
  10. id : resource_id;
    (*

    The unique identifier of the updated workload estimate.

    *)
}

Mixin for common fields returned by CRUD APIs

type nonrec update_workload_estimate_request = {
  1. expires_at : Smaws_Lib.Smithy_api.Types.timestamp option;
    (*

    The new expiration date for the workload estimate.

    *)
  2. name : workload_estimate_name option;
    (*

    The new name for the workload estimate.

    *)
  3. identifier : resource_id;
    (*

    The unique identifier of the workload estimate to update.

    *)
}
type nonrec resource_not_found_exception = {
  1. resource_type : Smaws_Lib.Smithy_api.Types.string_;
    (*

    The type of the resource that was not found.

    *)
  2. resource_id : Smaws_Lib.Smithy_api.Types.string_;
    (*

    The identifier of the resource that was not found.

    *)
  3. message : Smaws_Lib.Smithy_api.Types.string_;
}

The specified resource was not found.

type nonrec data_unavailable_exception = {
  1. message : Smaws_Lib.Smithy_api.Types.string_;
}

The requested data is currently unavailable.

type nonrec conflict_exception = {
  1. resource_type : Smaws_Lib.Smithy_api.Types.string_;
    (*

    The type of the resource that was not found.

    *)
  2. resource_id : Smaws_Lib.Smithy_api.Types.string_;
    (*

    The identifier of the resource that was not found.

    *)
  3. message : Smaws_Lib.Smithy_api.Types.string_;
}

The request could not be processed because of conflict in the current state of the resource.

type nonrec rate_type =
  1. | AFTER_DISCOUNTS_AND_COMMITMENTS
  2. | AFTER_DISCOUNTS
  3. | BEFORE_DISCOUNTS
type nonrec rate_types = rate_type list
type nonrec update_preferences_response = {
  1. standalone_account_rate_type_selections : rate_types option;
    (*

    The updated preferred rate types for a standalone account.

    *)
  2. member_account_rate_type_selections : rate_types option;
    (*

    The updated preferred rate types for member accounts.

    *)
  3. management_account_rate_type_selections : rate_types option;
    (*

    The updated preferred rate types for the management account.

    *)
}
type nonrec update_preferences_request = {
  1. standalone_account_rate_type_selections : rate_types option;
    (*

    The updated preferred rate types for a standalone account.

    *)
  2. member_account_rate_type_selections : rate_types option;
    (*

    The updated preferred rate types for member accounts.

    *)
  3. management_account_rate_type_selections : rate_types option;
    (*

    The updated preferred rate types for the management account.

    *)
}
type nonrec service_quota_exceeded_exception = {
  1. quota_code : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    The quota code that was exceeded.

    *)
  2. service_code : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    The service code that exceeded quota.

    *)
  3. resource_type : Smaws_Lib.Smithy_api.Types.string_;
    (*

    The type of the resource that exceeded quota.

    *)
  4. resource_id : Smaws_Lib.Smithy_api.Types.string_;
    (*

    The identifier of the resource that exceeded quota.

    *)
  5. message : Smaws_Lib.Smithy_api.Types.string_;
}

The request would cause you to exceed your service quota.

type nonrec bill_scenario_name = string
type nonrec bill_scenario_status =
  1. | STALE
  2. | FAILED
  3. | LOCKED
  4. | READY
type nonrec group_sharing_preference_enum =
  1. | RESTRICTED
  2. | PRIORITIZED
  3. | OPEN
type nonrec cost_category_arn = string
type nonrec update_bill_scenario_response = {
  1. cost_category_group_sharing_preference_arn : cost_category_arn option;
    (*

    The arn of the cost category used in the reserved and prioritized group sharing.

    *)
  2. group_sharing_preference : group_sharing_preference_enum option;
    (*

    The setting for the reserved instance and savings plan group sharing used in this estimate.

    *)
  3. failure_message : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    An error message if the bill scenario update failed.

    *)
  4. expires_at : Smaws_Lib.Smithy_api.Types.timestamp option;
    (*

    The updated expiration timestamp for the bill scenario.

    *)
  5. created_at : Smaws_Lib.Smithy_api.Types.timestamp option;
    (*

    The timestamp when the bill scenario was originally created.

    *)
  6. status : bill_scenario_status option;
    (*

    The current status of the updated bill scenario.

    *)
  7. bill_interval : bill_interval option;
    (*

    The time period covered by the updated bill scenario.

    *)
  8. name : bill_scenario_name option;
    (*

    The updated name of the bill scenario.

    *)
  9. id : resource_id;
    (*

    The unique identifier of the updated bill scenario.

    *)
}
type nonrec update_bill_scenario_request = {
  1. cost_category_group_sharing_preference_arn : cost_category_arn option;
    (*

    The arn of the cost category used in the reserved and prioritized group sharing.

    *)
  2. group_sharing_preference : group_sharing_preference_enum option;
    (*

    The setting for the reserved instance and savings plan group sharing used in this estimate.

    *)
  3. expires_at : Smaws_Lib.Smithy_api.Types.timestamp option;
    (*

    The new expiration date for the bill scenario.

    *)
  4. name : bill_scenario_name option;
    (*

    The new name for the bill scenario.

    *)
  5. identifier : resource_id;
    (*

    The unique identifier of the bill scenario to update.

    *)
}
type nonrec bill_estimate_name = string
type nonrec bill_estimate_status =
  1. | FAILED
  2. | COMPLETE
  3. | IN_PROGRESS
type nonrec cost_amount = {
  1. currency : currency_code option;
    (*

    The currency code for the cost amount.

    *)
  2. amount : Smaws_Lib.Smithy_api.Types.double option;
    (*

    The numeric value of the cost.

    *)
}

Represents a monetary amount with associated currency.

type nonrec cost_difference = {
  1. estimated_cost : cost_amount option;
    (*

    The estimated cost amount.

    *)
  2. historical_cost : cost_amount option;
    (*

    The historical cost amount.

    *)
}

Represents the difference between historical and estimated costs.

type nonrec service_cost_difference_map = (Smaws_Lib.Smithy_api.Types.string_ * cost_difference) list
type nonrec bill_estimate_cost_summary = {
  1. service_cost_differences : service_cost_difference_map option;
    (*

    A breakdown of cost differences by Amazon Web Services service.

    *)
  2. total_cost_difference : cost_difference option;
    (*

    The total difference in cost between the estimated and historical costs.

    *)
}

Provides a summary of cost-related information for a bill estimate.

type nonrec update_bill_estimate_response = {
  1. cost_category_group_sharing_preference_effective_date : Smaws_Lib.Smithy_api.Types.timestamp option;
    (*

    Timestamp of the effective date of the cost category used in the group sharing settings.

    *)
  2. cost_category_group_sharing_preference_arn : cost_category_arn option;
    (*

    The arn of the cost category used in the reserved and prioritized group sharing.

    *)
  3. group_sharing_preference : group_sharing_preference_enum option;
    (*

    The setting for the reserved instance and savings plan group sharing used in this estimate.

    *)
  4. expires_at : Smaws_Lib.Smithy_api.Types.timestamp option;
    (*

    The updated expiration timestamp for the bill estimate.

    *)
  5. created_at : Smaws_Lib.Smithy_api.Types.timestamp option;
    (*

    The timestamp when the bill estimate was originally created.

    *)
  6. cost_summary : bill_estimate_cost_summary option;
    (*

    A summary of the updated estimated costs.

    *)
  7. bill_interval : bill_interval option;
    (*

    The time period covered by the updated bill estimate.

    *)
  8. failure_message : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    An error message if the bill estimate update failed.

    *)
  9. status : bill_estimate_status option;
    (*

    The current status of the updated bill estimate.

    *)
  10. name : bill_estimate_name option;
    (*

    The updated name of the bill estimate.

    *)
  11. id : resource_id;
    (*

    The unique identifier of the updated bill estimate.

    *)
}
type nonrec update_bill_estimate_request = {
  1. expires_at : Smaws_Lib.Smithy_api.Types.timestamp option;
    (*

    The new expiration date for the bill estimate.

    *)
  2. name : bill_estimate_name option;
    (*

    The new name for the bill estimate.

    *)
  3. identifier : resource_id;
    (*

    The unique identifier of the bill estimate to update.

    *)
}
type nonrec untag_resource_response = unit
type nonrec arn = string
type nonrec resource_tag_key = string
type nonrec resource_tag_keys = resource_tag_key list
type nonrec untag_resource_request = {
  1. tag_keys : resource_tag_keys;
    (*

    The keys of the tags to remove from the resource.

    *)
  2. arn : arn;
    (*

    The Amazon Resource Name (ARN) of the resource to remove tags from.

    *)
}
type nonrec throttling_exception = {
  1. retry_after_seconds : Smaws_Lib.Smithy_api.Types.integer option;
    (*

    The service code that exceeded the throttling limit. Retry your request, but if the problem persists, contact Amazon Web Services support.

    *)
  2. quota_code : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    The quota code that exceeded the throttling limit.

    *)
  3. service_code : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    The service code that exceeded the throttling limit.

    *)
  4. message : Smaws_Lib.Smithy_api.Types.string_;
}

The request was denied due to request throttling.

type nonrec resource_tag_value = string
type nonrec tags = (resource_tag_key * resource_tag_value) list
type nonrec tag_resource_response = unit
type nonrec tag_resource_request = {
  1. tags : tags;
    (*

    The tags to add to the resource.

    *)
  2. arn : arn;
    (*

    The Amazon Resource Name (ARN) of the resource to add tags to.

    *)
}
type nonrec savings_plan_commitment = float
type nonrec savings_plan_arns = Smaws_Lib.Smithy_api.Types.string_ list
type nonrec reserved_instance_instance_count = int
type nonrec purchase_agreement_type =
  1. | RESERVED_INSTANCE
  2. | SAVINGS_PLANS
type nonrec next_page_token = string
type nonrec negate_savings_plan_action = {
  1. savings_plan_id : uuid option;
    (*

    The ID of the Savings Plan to remove.

    *)
}

Represents an action to remove a Savings Plan from a bill scenario.

This is the ID of an existing Savings Plan in your account.

type nonrec negate_reserved_instance_action = {
  1. reserved_instances_id : uuid option;
    (*

    The ID of the Reserved Instance to remove.

    *)
}

Represents an action to remove a Reserved Instance from a bill scenario.

This is the ID of an existing Reserved Instance in your account.

type nonrec max_results = int
type nonrec match_option =
  1. | CONTAINS
  2. | STARTS_WITH
  3. | EQUALS
type nonrec list_workload_estimates_response = {
  1. next_token : next_page_token option;
    (*

    A token to retrieve the next page of results, if any.

    *)
  2. items : workload_estimate_summaries option;
    (*

    The list of workload estimates for the account.

    *)
}
type nonrec filter_timestamp = {
  1. before_timestamp : Smaws_Lib.Smithy_api.Types.timestamp option;
    (*

    Include results before this timestamp.

    *)
  2. after_timestamp : Smaws_Lib.Smithy_api.Types.timestamp option;
    (*

    Include results after this timestamp.

    *)
}

Represents a time-based filter.

type nonrec list_workload_estimates_filter_name =
  1. | NAME
  2. | STATUS
type nonrec list_workload_estimates_filter_values = Smaws_Lib.Smithy_api.Types.string_ list
type nonrec list_workload_estimates_filter = {
  1. match_option : match_option option;
    (*

    The match option for the filter (e.g., equals, contains).

    *)
  2. values : list_workload_estimates_filter_values;
    (*

    The values to filter by.

    *)
  3. name : list_workload_estimates_filter_name;
    (*

    The name of the filter attribute.

    *)
}

Represents a filter for listing workload estimates.

type nonrec list_workload_estimates_filters = list_workload_estimates_filter list
type nonrec list_workload_estimates_request = {
  1. max_results : max_results option;
    (*

    The maximum number of results to return per page.

    *)
  2. next_token : next_page_token option;
    (*

    A token to retrieve the next page of results.

    *)
  3. filters : list_workload_estimates_filters option;
    (*

    Filters to apply to the list of workload estimates.

    *)
  4. expires_at_filter : filter_timestamp option;
    (*

    Filter workload estimates based on the expiration date.

    *)
  5. created_at_filter : filter_timestamp option;
    (*

    Filter workload estimates based on the creation date.

    *)
}
type nonrec list_workload_estimate_usage_response = {
  1. next_token : next_page_token option;
    (*

    A token to retrieve the next page of results, if any.

    *)
  2. items : workload_estimate_usage_items option;
    (*

    The list of usage items associated with the workload estimate.

    *)
}
type nonrec list_usage_filter_name =
  1. | HISTORICAL_LOCATION
  2. | HISTORICAL_OPERATION
  3. | HISTORICAL_USAGE_TYPE
  4. | HISTORICAL_SERVICE_CODE
  5. | HISTORICAL_USAGE_ACCOUNT_ID
  6. | USAGE_GROUP
  7. | LOCATION
  8. | OPERATION
  9. | USAGE_TYPE
  10. | SERVICE_CODE
  11. | USAGE_ACCOUNT_ID
type nonrec list_usage_filter_values = Smaws_Lib.Smithy_api.Types.string_ list
type nonrec list_usage_filter = {
  1. match_option : match_option option;
    (*

    The match option for the filter (e.g., equals, contains).

    *)
  2. values : list_usage_filter_values;
    (*

    The values to filter by.

    *)
  3. name : list_usage_filter_name;
    (*

    The name of the filter attribute.

    *)
}

Represents a filter for listing usage data.

type nonrec list_usage_filters = list_usage_filter list
type nonrec list_workload_estimate_usage_request = {
  1. max_results : workload_estimate_usage_max_results option;
    (*

    The maximum number of results to return per page.

    *)
  2. next_token : next_page_token option;
    (*

    A token to retrieve the next page of results.

    *)
  3. filters : list_usage_filters option;
    (*

    Filters to apply to the list of usage items.

    *)
  4. workload_estimate_id : resource_id;
    (*

    The unique identifier of the workload estimate to list usage for.

    *)
}
type nonrec list_tags_for_resource_response = {
  1. tags : tags option;
    (*

    The list of tags associated with the specified resource.

    *)
}
type nonrec list_tags_for_resource_request = {
  1. arn : arn;
    (*

    The Amazon Resource Name (ARN) of the resource to list tags for.

    *)
}
type nonrec bill_scenario_summary = {
  1. cost_category_group_sharing_preference_arn : cost_category_arn option;
    (*

    The arn of the cost category used in the reserved and prioritized group sharing.

    *)
  2. group_sharing_preference : group_sharing_preference_enum option;
    (*

    The setting for the reserved instance and savings plan group sharing used in this estimate.

    *)
  3. failure_message : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    An error message if the bill scenario creation or processing failed.

    *)
  4. expires_at : Smaws_Lib.Smithy_api.Types.timestamp option;
    (*

    The timestamp when the bill scenario will expire.

    *)
  5. created_at : Smaws_Lib.Smithy_api.Types.timestamp option;
    (*

    The timestamp when the bill scenario was created.

    *)
  6. status : bill_scenario_status option;
    (*

    The current status of the bill scenario.

    *)
  7. bill_interval : bill_interval option;
    (*

    The time period covered by the bill scenario.

    *)
  8. name : bill_scenario_name option;
    (*

    The name of the bill scenario.

    *)
  9. id : resource_id;
    (*

    The unique identifier of the bill scenario.

    *)
}

Provides a summary of a bill scenario.

type nonrec bill_scenario_summaries = bill_scenario_summary list
type nonrec list_bill_scenarios_response = {
  1. next_token : next_page_token option;
    (*

    A token to retrieve the next page of results, if any.

    *)
  2. items : bill_scenario_summaries option;
    (*

    The list of bill scenarios for the account.

    *)
}
type nonrec list_bill_scenarios_filter_name =
  1. | COST_CATEGORY_ARN
  2. | GROUP_SHARING_PREFERENCE
  3. | NAME
  4. | STATUS
type nonrec list_bill_scenarios_filter_values = Smaws_Lib.Smithy_api.Types.string_ list
type nonrec list_bill_scenarios_filter = {
  1. match_option : match_option option;
    (*

    The match option for the filter (e.g., equals, contains).

    *)
  2. values : list_bill_scenarios_filter_values;
    (*

    The values to filter by.

    *)
  3. name : list_bill_scenarios_filter_name;
    (*

    The name of the filter attribute.

    *)
}

Represents a filter for listing bill scenarios.

type nonrec list_bill_scenarios_filters = list_bill_scenarios_filter list
type nonrec list_bill_scenarios_request = {
  1. max_results : max_results option;
    (*

    The maximum number of results to return per page.

    *)
  2. next_token : next_page_token option;
    (*

    A token to retrieve the next page of results.

    *)
  3. expires_at_filter : filter_timestamp option;
    (*

    Filter bill scenarios based on the expiration date.

    *)
  4. created_at_filter : filter_timestamp option;
    (*

    Filter bill scenarios based on the creation date.

    *)
  5. filters : list_bill_scenarios_filters option;
    (*

    Filters to apply to the list of bill scenarios.

    *)
}
type nonrec availability_zone = string
type nonrec bill_scenario_usage_modification_item = {
  1. historical_usage : historical_usage_entity option;
    (*

    Historical usage data associated with this modification, if available.

    *)
  2. quantities : usage_quantities option;
    (*

    The modified usage quantities.

    *)
  3. usage_account_id : account_id option;
    (*

    The Amazon Web Services account ID associated with this usage modification.

    *)
  4. group : usage_group option;
    (*

    The group identifier for the usage modification.

    *)
  5. id : resource_id option;
    (*

    The unique identifier of the usage modification.

    *)
  6. availability_zone : availability_zone option;
    (*

    The availability zone associated with this usage modification, if applicable.

    *)
  7. location : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    The location associated with this usage modification.

    *)
  8. operation : operation;
    (*

    The specific operation associated with this usage modification.

    *)
  9. usage_type : usage_type;
    (*

    The type of usage being modified.

    *)
  10. service_code : service_code;
    (*

    The Amazon Web Services service code for this usage modification.

    *)
}

Represents a usage modification item in a bill scenario.

type nonrec bill_scenario_usage_modification_items = bill_scenario_usage_modification_item list
type nonrec list_bill_scenario_usage_modifications_response = {
  1. next_token : next_page_token option;
    (*

    A token to retrieve the next page of results, if any.

    *)
  2. items : bill_scenario_usage_modification_items option;
    (*

    The list of usage modifications associated with the bill scenario.

    *)
}
type nonrec list_bill_scenario_usage_modifications_request = {
  1. max_results : max_results option;
    (*

    The maximum number of results to return per page.

    *)
  2. next_token : next_page_token option;
    (*

    A token to retrieve the next page of results.

    *)
  3. filters : list_usage_filters option;
    (*

    Filters to apply to the list of usage modifications.

    *)
  4. bill_scenario_id : resource_id;
    (*

    The unique identifier of the bill scenario to list usage modifications for.

    *)
}
type nonrec add_reserved_instance_action = {
  1. instance_count : reserved_instance_instance_count option;
    (*

    The number of instances to add for this Reserved Instance offering.

    *)
  2. reserved_instances_offering_id : uuid option;
    (*

    The ID of the Reserved Instance offering to add. For more information, see DescribeReservedInstancesOfferings.

    *)
}

Represents an action to add a Reserved Instance to a bill scenario.

type nonrec add_savings_plan_action = {
  1. commitment : savings_plan_commitment option;
    (*

    The hourly commitment, in the same currency of the savingsPlanOfferingId. This is a value between 0.001 and 1 million. You cannot specify more than five digits after the decimal point.

    *)
  2. savings_plan_offering_id : uuid option;
    (*

    The ID of the Savings Plan offering to add. For more information, see DescribeSavingsPlansOfferings.

    *)
}

Represents an action to add a Savings Plan to a bill scenario.

type nonrec bill_scenario_commitment_modification_action =
  1. | NegateSavingsPlanAction of negate_savings_plan_action
    (*

    Action to remove a Savings Plan from the scenario.

    *)
  2. | NegateReservedInstanceAction of negate_reserved_instance_action
    (*

    Action to remove a Reserved Instance from the scenario.

    *)
  3. | AddSavingsPlanAction of add_savings_plan_action
    (*

    Action to add a Savings Plan to the scenario.

    *)
  4. | AddReservedInstanceAction of add_reserved_instance_action
    (*

    Action to add a Reserved Instance to the scenario.

    *)

Represents an action to modify commitments in a bill scenario.

type nonrec bill_scenario_commitment_modification_item = {
  1. commitment_action : bill_scenario_commitment_modification_action option;
    (*

    The specific commitment action taken in this modification.

    *)
  2. group : usage_group option;
    (*

    The group identifier for the commitment modification.

    *)
  3. usage_account_id : account_id option;
    (*

    The Amazon Web Services account ID associated with this commitment modification.

    *)
  4. id : resource_id option;
    (*

    The unique identifier of the commitment modification.

    *)
}

Represents a commitment modification item in a bill scenario.

type nonrec bill_scenario_commitment_modification_items = bill_scenario_commitment_modification_item list
type nonrec list_bill_scenario_commitment_modifications_response = {
  1. next_token : next_page_token option;
    (*

    A token to retrieve the next page of results, if any.

    *)
  2. items : bill_scenario_commitment_modification_items option;
    (*

    The list of commitment modifications associated with the bill scenario.

    *)
}
type nonrec list_bill_scenario_commitment_modifications_request = {
  1. max_results : max_results option;
    (*

    The maximum number of results to return per page.

    *)
  2. next_token : next_page_token option;
    (*

    A token to retrieve the next page of results.

    *)
  3. bill_scenario_id : resource_id;
    (*

    The unique identifier of the bill scenario to list commitment modifications for.

    *)
}
type nonrec bill_estimate_summary = {
  1. expires_at : Smaws_Lib.Smithy_api.Types.timestamp option;
    (*

    The timestamp when the bill estimate will expire.

    *)
  2. created_at : Smaws_Lib.Smithy_api.Types.timestamp option;
    (*

    The timestamp when the bill estimate was created.

    *)
  3. bill_interval : bill_interval option;
    (*

    The time period covered by the bill estimate.

    *)
  4. status : bill_estimate_status option;
    (*

    The current status of the bill estimate.

    *)
  5. name : bill_estimate_name option;
    (*

    The name of the bill estimate.

    *)
  6. id : resource_id;
    (*

    The unique identifier of the bill estimate.

    *)
}

Provides a summary of a bill estimate.

type nonrec bill_estimate_summaries = bill_estimate_summary list
type nonrec list_bill_estimates_response = {
  1. next_token : next_page_token option;
    (*

    A token to retrieve the next page of results, if any.

    *)
  2. items : bill_estimate_summaries option;
    (*

    The list of bill estimates for the account.

    *)
}
type nonrec list_bill_estimates_filter_name =
  1. | NAME
  2. | STATUS
type nonrec list_bill_estimates_filter_values = Smaws_Lib.Smithy_api.Types.string_ list
type nonrec list_bill_estimates_filter = {
  1. match_option : match_option option;
    (*

    The match option for the filter (e.g., equals, contains).

    *)
  2. values : list_bill_estimates_filter_values;
    (*

    The values to filter by.

    *)
  3. name : list_bill_estimates_filter_name;
    (*

    The name of the filter attribute.

    *)
}

Represents a filter for listing bill estimates.

type nonrec list_bill_estimates_filters = list_bill_estimates_filter list
type nonrec list_bill_estimates_request = {
  1. max_results : max_results option;
    (*

    The maximum number of results to return per page.

    *)
  2. next_token : next_page_token option;
    (*

    A token to retrieve the next page of results.

    *)
  3. expires_at_filter : filter_timestamp option;
    (*

    Filter bill estimates based on the expiration date.

    *)
  4. created_at_filter : filter_timestamp option;
    (*

    Filter bill estimates based on the creation date.

    *)
  5. filters : list_bill_estimates_filters option;
    (*

    Filters to apply to the list of bill estimates.

    *)
}
type nonrec bill_estimate_line_item_summary = {
  1. savings_plan_arns : savings_plan_arns option;
    (*

    The Amazon Resource Names (ARNs) of any Savings Plans applied to this line item.

    *)
  2. historical_cost : cost_amount option;
    (*

    The historical cost for this line item.

    *)
  3. historical_usage_quantity : usage_quantity_result option;
    (*

    The historical usage quantity for this line item.

    *)
  4. estimated_cost : cost_amount option;
    (*

    The estimated cost for this line item.

    *)
  5. estimated_usage_quantity : usage_quantity_result option;
    (*

    The estimated usage quantity for this line item.

    *)
  6. usage_account_id : account_id option;
    (*

    The Amazon Web Services account ID associated with the usage for this line item.

    *)
  7. payer_account_id : account_id option;
    (*

    The Amazon Web Services account ID of the payer for this line item.

    *)
  8. line_item_type : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    The type of this line item (e.g., Usage, Tax, Credit).

    *)
  9. line_item_id : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    The line item identifier from the original bill.

    *)
  10. id : resource_id option;
    (*

    The unique identifier of this line item.

    *)
  11. availability_zone : availability_zone option;
    (*

    The availability zone associated with this line item, if applicable.

    *)
  12. location : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    The location associated with this line item.

    *)
  13. operation : operation;
    (*

    The specific operation associated with this line item.

    *)
  14. usage_type : usage_type;
    (*

    The type of usage for this line item.

    *)
  15. service_code : service_code;
    (*

    The Amazon Web Services service code associated with this line item.

    *)
}

Provides a summary of a line item in a bill estimate.

type nonrec bill_estimate_line_item_summaries = bill_estimate_line_item_summary list
type nonrec list_bill_estimate_line_items_response = {
  1. next_token : next_page_token option;
    (*

    A token to retrieve the next page of results, if any.

    *)
  2. items : bill_estimate_line_item_summaries option;
    (*

    The list of line items associated with the bill estimate.

    *)
}
type nonrec list_bill_estimate_line_items_filter_name =
  1. | LINE_ITEM_TYPE
  2. | LOCATION
  3. | OPERATION
  4. | USAGE_TYPE
  5. | SERVICE_CODE
  6. | USAGE_ACCOUNT_ID
type nonrec list_bill_estimate_line_items_filter_values = Smaws_Lib.Smithy_api.Types.string_ list
type nonrec list_bill_estimate_line_items_filter = {
  1. match_option : match_option option;
    (*

    The match option for the filter (e.g., equals, contains).

    *)
  2. values : list_bill_estimate_line_items_filter_values;
    (*

    The values to filter by.

    *)
  3. name : list_bill_estimate_line_items_filter_name;
    (*

    The name of the filter attribute.

    *)
}

Represents a filter for listing bill estimate line items.

type nonrec list_bill_estimate_line_items_filters = list_bill_estimate_line_items_filter list
type nonrec list_bill_estimate_line_items_request = {
  1. max_results : max_results option;
    (*

    The maximum number of results to return per page.

    *)
  2. next_token : next_page_token option;
    (*

    A token to retrieve the next page of results.

    *)
  3. filters : list_bill_estimate_line_items_filters option;
    (*

    Filters to apply to the list of line items.

    *)
  4. bill_estimate_id : resource_id;
    (*

    The unique identifier of the bill estimate to list line items for.

    *)
}
type nonrec bill_estimate_input_usage_modification_summary = {
  1. historical_usage : historical_usage_entity option;
    (*

    Historical usage data associated with this modification, if available.

    *)
  2. quantities : usage_quantities option;
    (*

    The modified usage quantities.

    *)
  3. usage_account_id : account_id option;
    (*

    The Amazon Web Services account ID associated with this usage modification.

    *)
  4. group : usage_group option;
    (*

    The group identifier for the usage modification.

    *)
  5. id : resource_id option;
    (*

    The unique identifier of the usage modification.

    *)
  6. availability_zone : availability_zone option;
    (*

    The availability zone associated with this usage modification, if applicable.

    *)
  7. location : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    The location associated with this usage modification.

    *)
  8. operation : operation;
    (*

    The specific operation associated with this usage modification.

    *)
  9. usage_type : usage_type;
    (*

    The type of usage being modified.

    *)
  10. service_code : service_code;
    (*

    The Amazon Web Services service code for this usage modification.

    *)
}

Summarizes an input usage modification for a bill estimate.

type nonrec bill_estimate_input_usage_modification_summaries = bill_estimate_input_usage_modification_summary list
type nonrec list_bill_estimate_input_usage_modifications_response = {
  1. next_token : next_page_token option;
    (*

    A token to retrieve the next page of results, if any.

    *)
  2. items : bill_estimate_input_usage_modification_summaries option;
    (*

    The list of input usage modifications associated with the bill estimate.

    *)
}
type nonrec list_bill_estimate_input_usage_modifications_request = {
  1. max_results : max_results option;
    (*

    The maximum number of results to return per page.

    *)
  2. next_token : next_page_token option;
    (*

    A token to retrieve the next page of results.

    *)
  3. filters : list_usage_filters option;
    (*

    Filters to apply to the list of input usage modifications.

    *)
  4. bill_estimate_id : resource_id;
    (*

    The unique identifier of the bill estimate to list input usage modifications for.

    *)
}
type nonrec bill_estimate_input_commitment_modification_summary = {
  1. commitment_action : bill_scenario_commitment_modification_action option;
    (*

    The specific commitment action taken in this modification.

    *)
  2. usage_account_id : account_id option;
    (*

    The Amazon Web Services account ID associated with this commitment modification.

    *)
  3. group : usage_group option;
    (*

    The group identifier for the commitment modification.

    *)
  4. id : resource_id option;
    (*

    The unique identifier of the commitment modification.

    *)
}

Summarizes an input commitment modification for a bill estimate.

type nonrec bill_estimate_input_commitment_modification_summaries = bill_estimate_input_commitment_modification_summary list
type nonrec list_bill_estimate_input_commitment_modifications_response = {
  1. next_token : next_page_token option;
    (*

    A token to retrieve the next page of results, if any.

    *)
  2. items : bill_estimate_input_commitment_modification_summaries option;
    (*

    The list of input commitment modifications associated with the bill estimate.

    *)
}
type nonrec list_bill_estimate_input_commitment_modifications_request = {
  1. max_results : max_results option;
    (*

    The maximum number of results to return per page.

    *)
  2. next_token : next_page_token option;
    (*

    A token to retrieve the next page of results.

    *)
  3. bill_estimate_id : resource_id;
    (*

    The unique identifier of the bill estimate to list input commitment modifications for.

    *)
}
type nonrec bill_estimate_commitment_summary = {
  1. monthly_payment : cost_amount option;
    (*

    The monthly payment amount for this commitment, if applicable.

    *)
  2. upfront_payment : cost_amount option;
    (*

    The upfront payment amount for this commitment, if applicable.

    *)
  3. payment_option : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    The payment option chosen for this commitment (e.g., All Upfront, Partial Upfront, No Upfront).

    *)
  4. term_length : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    The length of the commitment term.

    *)
  5. region : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    The Amazon Web Services region associated with this commitment.

    *)
  6. usage_account_id : account_id option;
    (*

    The Amazon Web Services account ID associated with this commitment.

    *)
  7. offering_id : uuid option;
    (*

    The identifier of the specific offering associated with this commitment.

    *)
  8. purchase_agreement_type : purchase_agreement_type option;
    (*

    The type of purchase agreement (e.g., Reserved Instance, Savings Plan).

    *)
  9. id : resource_id option;
    (*

    The unique identifier of the commitment.

    *)
}

Provides a summary of commitment-related information for a bill estimate.

type nonrec bill_estimate_commitment_summaries = bill_estimate_commitment_summary list
type nonrec list_bill_estimate_commitments_response = {
  1. next_token : next_page_token option;
    (*

    A token to retrieve the next page of results, if any.

    *)
  2. items : bill_estimate_commitment_summaries option;
    (*

    The list of commitments associated with the bill estimate.

    *)
}
type nonrec list_bill_estimate_commitments_request = {
  1. max_results : max_results option;
    (*

    The maximum number of results to return per page.

    *)
  2. next_token : next_page_token option;
    (*

    A token to retrieve the next page of results.

    *)
  3. bill_estimate_id : resource_id;
    (*

    The unique identifier of the bill estimate to list commitments for.

    *)
}
type nonrec key = string
type nonrec internal_server_exception = {
  1. retry_after_seconds : Smaws_Lib.Smithy_api.Types.integer option;
    (*

    An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support.

    *)
  2. message : Smaws_Lib.Smithy_api.Types.string_;
}

An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web Services support.

type nonrec get_workload_estimate_response = {
  1. failure_message : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    An error message if the workload estimate retrieval failed.

    *)
  2. cost_currency : currency_code option;
    (*

    The currency of the estimated cost.

    *)
  3. total_cost : Smaws_Lib.Smithy_api.Types.double option;
    (*

    The total estimated cost for the workload.

    *)
  4. status : workload_estimate_status option;
    (*

    The current status of the workload estimate.

    *)
  5. rate_timestamp : Smaws_Lib.Smithy_api.Types.timestamp option;
    (*

    The timestamp of the pricing rates used for the estimate.

    *)
  6. rate_type : workload_estimate_rate_type option;
    (*

    The type of pricing rates used for the estimate.

    *)
  7. expires_at : Smaws_Lib.Smithy_api.Types.timestamp option;
    (*

    The timestamp when the workload estimate will expire.

    *)
  8. created_at : Smaws_Lib.Smithy_api.Types.timestamp option;
    (*

    The timestamp when the workload estimate was created.

    *)
  9. name : workload_estimate_name option;
    (*

    The name of the retrieved workload estimate.

    *)
  10. id : resource_id;
    (*

    The unique identifier of the retrieved workload estimate.

    *)
}

Mixin for common fields returned by CRUD APIs

type nonrec get_workload_estimate_request = {
  1. identifier : resource_id;
    (*

    The unique identifier of the workload estimate to retrieve.

    *)
}
type nonrec get_preferences_response = {
  1. standalone_account_rate_type_selections : rate_types option;
    (*

    The preferred rate types for a standalone account.

    *)
  2. member_account_rate_type_selections : rate_types option;
    (*

    The preferred rate types for member accounts.

    *)
  3. management_account_rate_type_selections : rate_types option;
    (*

    The preferred rate types for the management account.

    *)
}
type nonrec get_preferences_request = unit
type nonrec get_bill_scenario_response = {
  1. cost_category_group_sharing_preference_arn : cost_category_arn option;
    (*

    The arn of the cost category used in the reserved and prioritized group sharing.

    *)
  2. group_sharing_preference : group_sharing_preference_enum option;
    (*

    The setting for the reserved instance and savings plan group sharing used in this estimate.

    *)
  3. failure_message : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    An error message if the bill scenario retrieval failed.

    *)
  4. expires_at : Smaws_Lib.Smithy_api.Types.timestamp option;
    (*

    The timestamp when the bill scenario will expire.

    *)
  5. created_at : Smaws_Lib.Smithy_api.Types.timestamp option;
    (*

    The timestamp when the bill scenario was created.

    *)
  6. status : bill_scenario_status option;
    (*

    The current status of the bill scenario.

    *)
  7. bill_interval : bill_interval option;
    (*

    The time period covered by the bill scenario.

    *)
  8. name : bill_scenario_name option;
    (*

    The name of the retrieved bill scenario.

    *)
  9. id : resource_id;
    (*

    The unique identifier of the retrieved bill scenario.

    *)
}
type nonrec get_bill_scenario_request = {
  1. identifier : resource_id;
    (*

    The unique identifier of the bill scenario to retrieve.

    *)
}
type nonrec get_bill_estimate_response = {
  1. cost_category_group_sharing_preference_effective_date : Smaws_Lib.Smithy_api.Types.timestamp option;
    (*

    Timestamp of the effective date of the cost category used in the group sharing settings.

    *)
  2. cost_category_group_sharing_preference_arn : cost_category_arn option;
    (*

    The arn of the cost category used in the reserved and prioritized group sharing.

    *)
  3. group_sharing_preference : group_sharing_preference_enum option;
    (*

    The setting for the reserved instance and savings plan group sharing used in this estimate.

    *)
  4. expires_at : Smaws_Lib.Smithy_api.Types.timestamp option;
    (*

    The timestamp when the bill estimate will expire.

    *)
  5. created_at : Smaws_Lib.Smithy_api.Types.timestamp option;
    (*

    The timestamp when the bill estimate was created.

    *)
  6. cost_summary : bill_estimate_cost_summary option;
    (*

    A summary of the estimated costs.

    *)
  7. bill_interval : bill_interval option;
    (*

    The time period covered by the bill estimate.

    *)
  8. failure_message : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    An error message if the bill estimate retrieval failed.

    *)
  9. status : bill_estimate_status option;
    (*

    The current status of the bill estimate.

    *)
  10. name : bill_estimate_name option;
    (*

    The name of the retrieved bill estimate.

    *)
  11. id : resource_id;
    (*

    The unique identifier of the retrieved bill estimate.

    *)
}
type nonrec get_bill_estimate_request = {
  1. identifier : resource_id;
    (*

    The unique identifier of the bill estimate to retrieve.

    *)
}
type nonrec delete_workload_estimate_response = unit
type nonrec delete_workload_estimate_request = {
  1. identifier : resource_id;
    (*

    The unique identifier of the workload estimate to delete.

    *)
}
type nonrec delete_bill_scenario_response = unit
type nonrec delete_bill_scenario_request = {
  1. identifier : resource_id;
    (*

    The unique identifier of the bill scenario to delete.

    *)
}
type nonrec delete_bill_estimate_response = unit
type nonrec delete_bill_estimate_request = {
  1. identifier : resource_id;
    (*

    The unique identifier of the bill estimate to delete.

    *)
}
type nonrec create_workload_estimate_response = {
  1. failure_message : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    An error message if the workload estimate creation failed.

    *)
  2. cost_currency : currency_code option;
    (*

    The currency of the estimated cost.

    *)
  3. total_cost : Smaws_Lib.Smithy_api.Types.double option;
    (*

    The total estimated cost for the workload.

    *)
  4. status : workload_estimate_status option;
    (*

    The current status of the workload estimate.

    *)
  5. rate_timestamp : Smaws_Lib.Smithy_api.Types.timestamp option;
    (*

    The timestamp of the pricing rates used for the estimate.

    *)
  6. rate_type : workload_estimate_rate_type option;
    (*

    The type of pricing rates used for the estimate.

    *)
  7. expires_at : Smaws_Lib.Smithy_api.Types.timestamp option;
    (*

    The timestamp when the workload estimate will expire.

    *)
  8. created_at : Smaws_Lib.Smithy_api.Types.timestamp option;
    (*

    The timestamp when the workload estimate was created.

    *)
  9. name : workload_estimate_name option;
    (*

    The name of the created workload estimate.

    *)
  10. id : resource_id;
    (*

    The unique identifier for the created workload estimate.

    *)
}

Mixin for common fields returned by CRUD APIs

type nonrec client_token = string
type nonrec create_workload_estimate_request = {
  1. tags : tags option;
    (*

    The tags to apply to the workload estimate.

    *)
  2. rate_type : workload_estimate_rate_type option;
    (*

    The type of pricing rates to use for the estimate.

    *)
  3. client_token : client_token option;
    (*

    A unique, case-sensitive identifier to ensure idempotency of the request.

    *)
  4. name : workload_estimate_name;
    (*

    A descriptive name for the workload estimate.

    *)
}
type nonrec create_bill_scenario_response = {
  1. cost_category_group_sharing_preference_arn : cost_category_arn option;
    (*

    The arn of the cost category used in the reserved and prioritized group sharing.

    *)
  2. group_sharing_preference : group_sharing_preference_enum option;
    (*

    The setting for the reserved instance and savings plan group sharing used in this estimate.

    *)
  3. failure_message : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    An error message if the bill scenario creation failed.

    *)
  4. expires_at : Smaws_Lib.Smithy_api.Types.timestamp option;
    (*

    The timestamp when the bill scenario will expire.

    *)
  5. created_at : Smaws_Lib.Smithy_api.Types.timestamp option;
    (*

    The timestamp when the bill scenario was created.

    *)
  6. status : bill_scenario_status option;
    (*

    The current status of the bill scenario.

    *)
  7. bill_interval : bill_interval option;
    (*

    The time period covered by the bill scenario.

    *)
  8. name : bill_scenario_name option;
    (*

    The name of the created bill scenario.

    *)
  9. id : resource_id;
    (*

    The unique identifier for the created bill scenario.

    *)
}
type nonrec create_bill_scenario_request = {
  1. cost_category_group_sharing_preference_arn : cost_category_arn option;
    (*

    The arn of the cost category used in the reserved and prioritized group sharing.

    *)
  2. group_sharing_preference : group_sharing_preference_enum option;
    (*

    The setting for the reserved instance and savings plan group sharing used in this estimate.

    *)
  3. tags : tags option;
    (*

    The tags to apply to the bill scenario.

    *)
  4. client_token : client_token option;
    (*

    A unique, case-sensitive identifier to ensure idempotency of the request.

    *)
  5. name : bill_scenario_name;
    (*

    A descriptive name for the bill scenario.

    *)
}
type nonrec create_bill_estimate_response = {
  1. cost_category_group_sharing_preference_effective_date : Smaws_Lib.Smithy_api.Types.timestamp option;
    (*

    Timestamp of the effective date of the cost category used in the group sharing settings.

    *)
  2. cost_category_group_sharing_preference_arn : cost_category_arn option;
    (*

    The arn of the cost category used in the reserved and prioritized group sharing.

    *)
  3. group_sharing_preference : group_sharing_preference_enum option;
    (*

    The setting for the reserved instance and savings plan group sharing used in this estimate.

    *)
  4. expires_at : Smaws_Lib.Smithy_api.Types.timestamp option;
    (*

    The timestamp of when the Bill estimate will expire. A Bill estimate becomes inaccessible after expiration.

    *)
  5. created_at : Smaws_Lib.Smithy_api.Types.timestamp option;
    (*

    The timestamp of when the Bill estimate create process was started (not when it successfully completed or failed).

    *)
  6. cost_summary : bill_estimate_cost_summary option;
    (*

    Returns summary-level cost information once a Bill estimate is successfully generated. This summary includes: 1) the total cost difference, showing the pre-tax cost change for the consolidated billing family between the completed anniversary bill and the estimated bill, and 2) total cost differences per service, detailing the pre-tax cost of each service, comparing the completed anniversary bill to the estimated bill on a per-service basis.

    *)
  7. bill_interval : bill_interval option;
    (*

    The bill month start and end timestamp that was used to create the Bill estimate. This is set to the last complete anniversary bill month start and end timestamp.

    *)
  8. failure_message : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    This attribute provides the reason if a Bill estimate result generation fails.

    *)
  9. status : bill_estimate_status option;
    (*

    The status of your newly created Bill estimate. Bill estimate creation can take anywhere between 8 to 12 hours. The status will allow you to identify when the Bill estimate is complete or has failed.

    *)
  10. name : bill_estimate_name option;
    (*

    The name of your newly created Bill estimate.

    *)
  11. id : resource_id;
    (*

    The unique identifier of your newly created Bill estimate.

    *)
}
type nonrec create_bill_estimate_request = {
  1. tags : tags option;
    (*

    An optional list of tags to associate with the specified BillEstimate. You can use resource tags to control access to your BillEstimate using IAM policies. Each tag consists of a key and a value, and each key must be unique for the resource. The following restrictions apply to resource tags:

    • Although the maximum number of array members is 200, you can assign a maximum of 50 user-tags to one resource. The remaining are reserved for Amazon Web Services.
    • The maximum length of a key is 128 characters.
    • The maximum length of a value is 256 characters.
    • Keys and values can only contain alphanumeric characters, spaces, and any of the following: _.:/=+@-.
    • Keys and values are case sensitive.
    • Keys and values are trimmed for any leading or trailing whitespaces.
    • Don't use aws: as a prefix for your keys. This prefix is reserved for Amazon Web Services.
    *)
  2. client_token : client_token option;
    (*

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

    *)
  3. name : bill_estimate_name;
    (*

    The name of the Bill estimate that will be created. Names must be unique for an account.

    *)
  4. bill_scenario_id : resource_id;
    (*

    The ID of the Bill Scenario for which you want to create a Bill estimate.

    *)
}
type nonrec bill_scenario_usage_modification = Smaws_Lib.CoreTypes.Resource.t
type nonrec bill_scenario_commitment_modification = Smaws_Lib.CoreTypes.Resource.t
type nonrec bill_scenario = Smaws_Lib.CoreTypes.Resource.t
type nonrec bill_estimate_line_item = Smaws_Lib.CoreTypes.Resource.t
type nonrec bill_estimate_input_usage_modification = Smaws_Lib.CoreTypes.Resource.t
type nonrec bill_estimate_input_commitment_modification = Smaws_Lib.CoreTypes.Resource.t
type nonrec bill_estimate_commitment = Smaws_Lib.CoreTypes.Resource.t
type nonrec bill_estimate = Smaws_Lib.CoreTypes.Resource.t
type nonrec batch_update_workload_estimate_usage_error = {
  1. error_code : workload_estimate_update_usage_error_code option;
    (*

    The code associated with the error.

    *)
  2. error_message : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    The message that describes the error.

    *)
  3. id : resource_id option;
    (*

    The ID of the error.

    *)
}

Represents an error that occurred when updating usage in a workload estimate.

type nonrec batch_update_workload_estimate_usage_errors = batch_update_workload_estimate_usage_error list
type nonrec batch_update_workload_estimate_usage_response = {
  1. errors : batch_update_workload_estimate_usage_errors option;
    (*

    Returns the list of error reasons and usage line item IDs that could not be updated for the Workload estimate.

    *)
  2. items : workload_estimate_usage_items option;
    (*

    Returns the list of successful usage line items that were updated for a Workload estimate.

    *)
}
type nonrec batch_update_workload_estimate_usage_entry = {
  1. amount : Smaws_Lib.Smithy_api.Types.double option;
    (*

    The updated estimated usage amount.

    *)
  2. group : usage_group option;
    (*

    The updated group identifier for the usage estimate.

    *)
  3. id : resource_id;
    (*

    The unique identifier of the usage estimate to update.

    *)
}

Represents an entry in a batch operation to update workload estimate usage.

type nonrec batch_update_workload_estimate_usage_entries = batch_update_workload_estimate_usage_entry list
type nonrec batch_update_workload_estimate_usage_request = {
  1. usage : batch_update_workload_estimate_usage_entries;
    (*

    List of usage line amounts and usage group that you want to update in a Workload estimate identified by the usage ID.

    *)
  2. workload_estimate_id : resource_id;
    (*

    The ID of the Workload estimate for which you want to modify the usage lines.

    *)
}
type nonrec batch_update_bill_scenario_usage_modification_error_code =
  1. | INTERNAL_SERVER_ERROR
  2. | CONFLICT
  3. | NOT_FOUND
  4. | BAD_REQUEST
type nonrec batch_update_bill_scenario_usage_modification_error = {
  1. error_code : batch_update_bill_scenario_usage_modification_error_code option;
    (*

    The code associated with the error.

    *)
  2. error_message : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    The message that describes the error.

    *)
  3. id : resource_id option;
    (*

    The ID of the error.

    *)
}

Represents an error that occurred when updating usage in a Bill Scenario.

type nonrec batch_update_bill_scenario_usage_modification_errors = batch_update_bill_scenario_usage_modification_error list
type nonrec batch_update_bill_scenario_usage_modification_response = {
  1. errors : batch_update_bill_scenario_usage_modification_errors option;
    (*

    Returns the list of error reasons and usage line item IDs that could not be updated for the Bill Scenario.

    *)
  2. items : bill_scenario_usage_modification_items option;
    (*

    Returns the list of successful usage line items that were updated for a Bill Scenario.

    *)
}
type nonrec batch_update_bill_scenario_usage_modification_entry = {
  1. amounts : usage_amounts option;
    (*

    The updated usage amounts for the modification.

    *)
  2. group : usage_group option;
    (*

    The updated group identifier for the usage modification.

    *)
  3. id : resource_id;
    (*

    The unique identifier of the usage modification to update.

    *)
}

Represents an entry in a batch operation to update bill scenario usage modifications.

type nonrec batch_update_bill_scenario_usage_modification_entries = batch_update_bill_scenario_usage_modification_entry list
type nonrec batch_update_bill_scenario_usage_modification_request = {
  1. usage_modifications : batch_update_bill_scenario_usage_modification_entries;
    (*

    List of usage lines that you want to update in a Bill Scenario identified by the usage ID.

    *)
  2. bill_scenario_id : resource_id;
    (*

    The ID of the Bill Scenario for which you want to modify the usage lines.

    *)
}
type nonrec batch_update_bill_scenario_commitment_modification_error_code =
  1. | INTERNAL_SERVER_ERROR
  2. | CONFLICT
  3. | NOT_FOUND
  4. | BAD_REQUEST
type nonrec batch_update_bill_scenario_commitment_modification_error = {
  1. error_message : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    The message that describes the error.

    *)
  2. error_code : batch_update_bill_scenario_commitment_modification_error_code option;
    (*

    The code associated with the error.

    *)
  3. id : resource_id option;
    (*

    The ID of the error.

    *)
}

Represents an error that occurred when updating a commitment in a Bill Scenario.

type nonrec batch_update_bill_scenario_commitment_modification_errors = batch_update_bill_scenario_commitment_modification_error list
type nonrec batch_update_bill_scenario_commitment_modification_response = {
  1. errors : batch_update_bill_scenario_commitment_modification_errors option;
    (*

    Returns the list of error reasons and commitment line item IDs that could not be updated for the Bill Scenario.

    *)
  2. items : bill_scenario_commitment_modification_items option;
    (*

    Returns the list of successful commitment line items that were updated for a Bill Scenario.

    *)
}
type nonrec batch_update_bill_scenario_commitment_modification_entry = {
  1. group : usage_group option;
    (*

    The updated group identifier for the commitment modification.

    *)
  2. id : resource_id;
    (*

    The unique identifier of the commitment modification to update.

    *)
}

Represents an entry in a batch operation to update bill scenario commitment modifications.

type nonrec batch_update_bill_scenario_commitment_modification_entries = batch_update_bill_scenario_commitment_modification_entry list
type nonrec batch_update_bill_scenario_commitment_modification_request = {
  1. commitment_modifications : batch_update_bill_scenario_commitment_modification_entries;
    (*

    List of commitments that you want to update in a Bill Scenario.

    *)
  2. bill_scenario_id : resource_id;
    (*

    The ID of the Bill Scenario for which you want to modify the commitment group of a modeled commitment.

    *)
}
type nonrec batch_delete_workload_estimate_usage_error = {
  1. error_code : workload_estimate_update_usage_error_code option;
    (*

    The code associated with the error.

    *)
  2. error_message : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    The message that describes the error.

    *)
  3. id : resource_id option;
    (*

    The ID of the error.

    *)
}

Represents an error that occurred when deleting usage in a workload estimate.

type nonrec batch_delete_workload_estimate_usage_errors = batch_delete_workload_estimate_usage_error list
type nonrec batch_delete_workload_estimate_usage_response = {
  1. errors : batch_delete_workload_estimate_usage_errors option;
    (*

    Returns the list of errors reason and the usage item keys that cannot be deleted from the Workload estimate.

    *)
}
type nonrec batch_delete_workload_estimate_usage_entries = resource_id list
type nonrec batch_delete_workload_estimate_usage_request = {
  1. ids : batch_delete_workload_estimate_usage_entries;
    (*

    List of usage that you want to delete from the Workload estimate.

    *)
  2. workload_estimate_id : resource_id;
    (*

    The ID of the Workload estimate for which you want to delete the modeled usage.

    *)
}
type nonrec batch_delete_bill_scenario_usage_modification_error_code =
  1. | INTERNAL_SERVER_ERROR
  2. | CONFLICT
  3. | BAD_REQUEST
type nonrec batch_delete_bill_scenario_usage_modification_error = {
  1. error_code : batch_delete_bill_scenario_usage_modification_error_code option;
    (*

    The code associated with the error.

    *)
  2. error_message : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    The message that describes the error.

    *)
  3. id : resource_id option;
    (*

    The ID of the error.

    *)
}

Represents an error that occurred when deleting usage in a Bill Scenario.

type nonrec batch_delete_bill_scenario_usage_modification_errors = batch_delete_bill_scenario_usage_modification_error list
type nonrec batch_delete_bill_scenario_usage_modification_response = {
  1. errors : batch_delete_bill_scenario_usage_modification_errors option;
    (*

    Returns the list of errors reason and the usage item keys that cannot be deleted from the Bill Scenario.

    *)
}
type nonrec batch_delete_bill_scenario_usage_modification_entries = resource_id list
type nonrec batch_delete_bill_scenario_usage_modification_request = {
  1. ids : batch_delete_bill_scenario_usage_modification_entries;
    (*

    List of usage that you want to delete from the Bill Scenario.

    *)
  2. bill_scenario_id : resource_id;
    (*

    The ID of the Bill Scenario for which you want to delete the modeled usage.

    *)
}
type nonrec batch_delete_bill_scenario_commitment_modification_error_code =
  1. | INTERNAL_SERVER_ERROR
  2. | CONFLICT
  3. | BAD_REQUEST
type nonrec batch_delete_bill_scenario_commitment_modification_error = {
  1. error_message : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    The message that describes the error.

    *)
  2. error_code : batch_delete_bill_scenario_commitment_modification_error_code option;
    (*

    The code associated with the error.

    *)
  3. id : resource_id option;
    (*

    The ID of the error.

    *)
}

Represents an error that occurred when deleting a commitment in a Bill Scenario.

type nonrec batch_delete_bill_scenario_commitment_modification_errors = batch_delete_bill_scenario_commitment_modification_error list
type nonrec batch_delete_bill_scenario_commitment_modification_response = {
  1. errors : batch_delete_bill_scenario_commitment_modification_errors option;
    (*

    Returns the list of errors reason and the commitment item keys that cannot be deleted from the Bill Scenario.

    *)
}
type nonrec batch_delete_bill_scenario_commitment_modification_entries = resource_id list
type nonrec batch_delete_bill_scenario_commitment_modification_request = {
  1. ids : batch_delete_bill_scenario_commitment_modification_entries;
    (*

    List of commitments that you want to delete from the Bill Scenario.

    *)
  2. bill_scenario_id : resource_id;
    (*

    The ID of the Bill Scenario for which you want to delete the modeled commitment.

    *)
}
type nonrec batch_create_workload_estimate_usage_item = {
  1. key : key option;
    (*

    The key of the successfully created entry.

    *)
  2. historical_usage : historical_usage_entity option;
    (*

    Historical usage data associated with this estimate, if available.

    *)
  3. status : workload_estimate_cost_status option;
    (*

    The current status of the created usage estimate.

    *)
  4. currency : currency_code option;
    (*

    The currency of the estimated cost.

    *)
  5. cost : Smaws_Lib.Smithy_api.Types.double option;
    (*

    The estimated cost associated with this usage.

    *)
  6. quantity : workload_estimate_usage_quantity option;
    (*

    The estimated usage quantity.

    *)
  7. group : usage_group option;
    (*

    The group identifier for the created usage estimate.

    *)
  8. usage_account_id : account_id option;
    (*

    The Amazon Web Services account ID associated with the created usage estimate.

    *)
  9. id : resource_id option;
    (*

    The unique identifier assigned to the created usage estimate.

    *)
  10. location : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    The location associated with this usage estimate.

    *)
  11. operation : operation;
    (*

    The specific operation associated with this usage estimate.

    *)
  12. usage_type : usage_type;
    (*

    The type of usage that was estimated.

    *)
  13. service_code : service_code;
    (*

    The Amazon Web Services service code for this usage estimate.

    *)
}

Represents a successfully created item in a batch operation for workload estimate usage.

type nonrec batch_create_workload_estimate_usage_items = batch_create_workload_estimate_usage_item list
type nonrec batch_create_workload_estimate_usage_code =
  1. | INTERNAL_SERVER_ERROR
  2. | CONFLICT
  3. | NOT_FOUND
  4. | BAD_REQUEST
type nonrec batch_create_workload_estimate_usage_error = {
  1. error_message : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    A descriptive message for the error that occurred.

    *)
  2. error_code : batch_create_workload_estimate_usage_code option;
    (*

    The error code associated with the failed operation.

    *)
  3. key : key option;
    (*

    The key of the entry that caused the error.

    *)
}

Represents an error that occurred during a batch create operation for workload estimate usage.

type nonrec batch_create_workload_estimate_usage_errors = batch_create_workload_estimate_usage_error list
type nonrec batch_create_workload_estimate_usage_response = {
  1. errors : batch_create_workload_estimate_usage_errors option;
    (*

    Returns the list of errors reason and the usage item keys that cannot be created in the Workload estimate.

    *)
  2. items : batch_create_workload_estimate_usage_items option;
    (*

    Returns the list of successful usage line items that were created for the Workload estimate.

    *)
}
type nonrec batch_create_workload_estimate_usage_entry = {
  1. historical_usage : historical_usage_entity option;
    (*

    Historical usage data associated with this estimate, if available.

    *)
  2. amount : Smaws_Lib.Smithy_api.Types.double;
    (*

    The estimated usage amount.

    *)
  3. usage_account_id : account_id;
    (*

    The Amazon Web Services account ID associated with this usage estimate.

    *)
  4. group : usage_group option;
    (*

    An optional group identifier for the usage estimate.

    *)
  5. key : key;
    (*

    A unique identifier for this entry in the batch operation.

    *)
  6. operation : operation;
    (*

    The specific operation associated with this usage estimate.

    *)
  7. usage_type : usage_type;
    (*

    The type of usage being estimated.

    *)
  8. service_code : service_code;
    (*

    The Amazon Web Services service code for this usage estimate.

    *)
}

Represents an entry in a batch operation to create workload estimate usage.

type nonrec batch_create_workload_estimate_usage_entries = batch_create_workload_estimate_usage_entry list
type nonrec batch_create_workload_estimate_usage_request = {
  1. client_token : client_token option;
    (*

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

    *)
  2. usage : batch_create_workload_estimate_usage_entries;
    (*

    List of usage that you want to model in the Workload estimate.

    *)
  3. workload_estimate_id : resource_id;
    (*

    The ID of the Workload estimate for which you want to create the modeled usage.

    *)
}
type nonrec batch_create_bill_scenario_usage_modification_item = {
  1. key : key option;
    (*

    The key of the successfully created entry.

    *)
  2. historical_usage : historical_usage_entity option;
    (*

    Historical usage data associated with this modification, if available.

    *)
  3. quantities : usage_quantities option;
    (*

    The modified usage quantities.

    *)
  4. usage_account_id : account_id option;
    (*

    The Amazon Web Services account ID associated with the created usage modification.

    *)
  5. group : usage_group option;
    (*

    The group identifier for the created usage modification.

    *)
  6. id : resource_id option;
    (*

    The unique identifier assigned to the created usage modification.

    *)
  7. availability_zone : availability_zone option;
    (*

    The availability zone associated with this usage modification, if applicable.

    *)
  8. location : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    The location associated with this usage modification.

    *)
  9. operation : operation;
    (*

    The specific operation associated with this usage modification.

    *)
  10. usage_type : usage_type;
    (*

    The type of usage that was modified.

    *)
  11. service_code : service_code;
    (*

    The Amazon Web Services service code for this usage modification.

    *)
}

Represents a successfully created item in a batch operation for bill scenario usage modifications.

type nonrec batch_create_bill_scenario_usage_modification_items = batch_create_bill_scenario_usage_modification_item list
type nonrec batch_create_bill_scenario_usage_modification_error_code =
  1. | INTERNAL_SERVER_ERROR
  2. | CONFLICT
  3. | NOT_FOUND
  4. | BAD_REQUEST
type nonrec batch_create_bill_scenario_usage_modification_error = {
  1. error_code : batch_create_bill_scenario_usage_modification_error_code option;
    (*

    The error code associated with the failed operation.

    *)
  2. error_message : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    A descriptive message for the error that occurred.

    *)
  3. key : key option;
    (*

    The key of the entry that caused the error.

    *)
}

Represents an error that occurred during a batch create operation for bill scenario usage modifications.

type nonrec batch_create_bill_scenario_usage_modification_errors = batch_create_bill_scenario_usage_modification_error list
type nonrec batch_create_bill_scenario_usage_modification_response = {
  1. errors : batch_create_bill_scenario_usage_modification_errors option;
    (*

    Returns the list of errors reason and the usage item keys that cannot be created in the Bill Scenario.

    *)
  2. items : batch_create_bill_scenario_usage_modification_items option;
    (*

    Returns the list of successful usage line items that were created for the Bill Scenario.

    *)
}
type nonrec batch_create_bill_scenario_usage_modification_entry = {
  1. historical_usage : historical_usage_entity option;
    (*

    Historical usage data associated with this modification, if available.

    *)
  2. amounts : usage_amounts option;
    (*

    The amount of usage you want to create for the service use you are modeling.

    *)
  3. usage_account_id : account_id;
    (*

    The Amazon Web Services account ID to which this usage will be applied to.

    *)
  4. group : usage_group option;
    (*

    An optional group identifier for the usage modification.

    *)
  5. key : key;
    (*

    A unique identifier for this entry in the batch operation. This can be any valid string. This key is useful to identify errors associated with any usage entry as any error is returned with this key.

    *)
  6. availability_zone : availability_zone option;
    (*

    The Availability Zone that this usage line uses.

    *)
  7. operation : operation;
    (*

    The specific operation associated with this usage modification. Describes the specific Amazon Web Services operation that this usage line models. For example, RunInstances indicates the operation of an Amazon EC2 instance.

    *)
  8. usage_type : usage_type;
    (*

    Describes the usage details of the usage line item.

    *)
  9. service_code : service_code;
    (*

    The Amazon Web Services service code for this usage modification. This identifies the specific Amazon Web Services service to the customer as a unique short abbreviation. For example, AmazonEC2 and AWSKMS.

    *)
}

Represents an entry in a batch operation to create bill scenario usage modifications.

type nonrec batch_create_bill_scenario_usage_modification_entries = batch_create_bill_scenario_usage_modification_entry list
type nonrec batch_create_bill_scenario_usage_modification_request = {
  1. client_token : client_token option;
    (*

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

    *)
  2. usage_modifications : batch_create_bill_scenario_usage_modification_entries;
    (*

    List of usage that you want to model in the Bill Scenario.

    *)
  3. bill_scenario_id : resource_id;
    (*

    The ID of the Bill Scenario for which you want to create the modeled usage.

    *)
}
type nonrec batch_create_bill_scenario_commitment_modification_item = {
  1. commitment_action : bill_scenario_commitment_modification_action option;
    (*

    The specific commitment action that was taken.

    *)
  2. usage_account_id : account_id option;
    (*

    The Amazon Web Services account ID associated with the created commitment modification.

    *)
  3. group : usage_group option;
    (*

    The group identifier for the created commitment modification.

    *)
  4. id : resource_id option;
    (*

    The unique identifier assigned to the created commitment modification.

    *)
  5. key : key option;
    (*

    The key of the successfully created entry. This can be any valid string. This key is useful to identify errors associated with any commitment entry as any error is returned with this key.

    *)
}

Represents a successfully created item in a batch operation for bill scenario commitment modifications.

type nonrec batch_create_bill_scenario_commitment_modification_items = batch_create_bill_scenario_commitment_modification_item list
type nonrec batch_create_bill_scenario_commitment_modification_error_code =
  1. | INVALID_ACCOUNT
  2. | INTERNAL_SERVER_ERROR
  3. | CONFLICT
type nonrec batch_create_bill_scenario_commitment_modification_error = {
  1. error_code : batch_create_bill_scenario_commitment_modification_error_code option;
    (*

    The error code associated with the failed operation.

    *)
  2. error_message : Smaws_Lib.Smithy_api.Types.string_ option;
    (*

    A descriptive message for the error that occurred.

    *)
  3. key : key option;
    (*

    The key of the entry that caused the error.

    *)
}

Represents an error that occurred during a batch create operation for bill scenario commitment modifications.

type nonrec batch_create_bill_scenario_commitment_modification_errors = batch_create_bill_scenario_commitment_modification_error list
type nonrec batch_create_bill_scenario_commitment_modification_response = {
  1. errors : batch_create_bill_scenario_commitment_modification_errors option;
    (*

    Returns the list of errors reason and the commitment item keys that cannot be created in the Bill Scenario.

    *)
  2. items : batch_create_bill_scenario_commitment_modification_items option;
    (*

    Returns the list of successful commitment line items that were created for the Bill Scenario.

    *)
}
type nonrec batch_create_bill_scenario_commitment_modification_entry = {
  1. commitment_action : bill_scenario_commitment_modification_action;
    (*

    The specific commitment action to be taken (e.g., adding a Reserved Instance or Savings Plan).

    *)
  2. usage_account_id : account_id;
    (*

    The Amazon Web Services account ID to which this commitment will be applied to.

    *)
  3. group : usage_group option;
    (*

    An optional group identifier for the commitment modification.

    *)
  4. key : key;
    (*

    A unique identifier for this entry in the batch operation. This can be any valid string. This key is useful to identify errors associated with any commitment entry as any error is returned with this key.

    *)
}

Represents an entry object in the batch operation to create bill scenario commitment modifications.

type nonrec batch_create_bill_scenario_commitment_modification_entries = batch_create_bill_scenario_commitment_modification_entry list
type nonrec batch_create_bill_scenario_commitment_modification_request = {
  1. client_token : client_token option;
    (*

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

    *)
  2. commitment_modifications : batch_create_bill_scenario_commitment_modification_entries;
    (*

    List of commitments that you want to model in the Bill Scenario.

    *)
  3. bill_scenario_id : resource_id;
    (*

    The ID of the Bill Scenario for which you want to create the modeled commitment.

    *)
}
type nonrec access_denied_exception = {
  1. message : Smaws_Lib.Smithy_api.Types.string_;
}

You do not have sufficient access to perform this action.