Amazon Billing And Cost Management Billing And Cost Management Bill Scenario Commitment Modification API

The Billing And Cost Management Bill Scenario Commitment Modification API from Amazon Billing And Cost Management — 4 operation(s) for billing and cost management bill scenario commitment modification.

GitHub OpenAPI

Operations 4

POST /#BatchCreateBillScenarioCommitmentModification Batch Create Bill Scenario Commitment Modification #
POST /#BatchDeleteBillScenarioCommitmentModification Batch Delete Bill Scenario Commitment Modification #
POST /#BatchUpdateBillScenarioCommitmentModification Batch Update Bill Scenario Commitment Modification #
POST /#ListBillScenarioCommitmentModifications List Bill Scenario Commitment Modifications #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/amazon-billing-and-cost-management:amazon-billing-and-cost-management-bill-scenario-commitment-modification-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

amazon-billing-and-cost-management-bill-scenario-commitment-modification-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: AWS Cost Explorer Service Bill Scenario Commitment Modification API
  version: '2017-10-25'
  description: Generated from AWS's published Smithy model for AWS Cost Explorer Service. 4 operation(s).
  contact:
    name: Amazon Web Services
    url: https://aws.amazon.com/contact-us/
  license:
    name: Apache 2.0
    identifier: Apache-2.0
    url: https://github.com/aws/api-models-aws/blob/main/LICENSE
servers:
- url: https://bcm-pricing-calculator.{region}.amazonaws.com
  variables:
    region:
      default: us-east-1
security:
- sigv4: []
paths:
  /#BatchCreateBillScenarioCommitmentModification:
    post:
      operationId: BatchCreateBillScenarioCommitmentModification
      summary: Batch Create Bill Scenario Commitment Modification
      description: Create Compute Savings Plans, EC2 Instance Savings Plans, or EC2 Reserved Instances commitments that you
        want to model in a Bill Scenario. The BatchCreateBillScenarioCommitmentModification operation doesn't have its own
        IAM permission. To authorize this operation for Amazon Web Services principals, include the permission bcm-pricing-calculator:CreateBillScenarioCommitmentModification
        in your policies.
      responses:
        '200':
          description: Success
          content:
            application/x-amz-json-1.0:
              schema:
                $ref: '#/components/schemas/BatchCreateBillScenarioCommitmentModificationResponse'
        '409':
          description: ConflictException
          content:
            application/x-amz-json-1.0:
              schema:
                $ref: '#/components/schemas/BcmPricingCalculatorConflictException'
        '400':
          description: DataUnavailableException; ValidationException
          content:
            application/x-amz-json-1.0:
              schema:
                $ref: '#/components/schemas/BcmPricingCalculatorDataUnavailableException'
        '404':
          description: ResourceNotFoundException
          content:
            application/x-amz-json-1.0:
              schema:
                $ref: '#/components/schemas/BcmPricingCalculatorResourceNotFoundException'
        '403':
          description: AccessDeniedException
          content:
            application/x-amz-json-1.0:
              schema:
                $ref: '#/components/schemas/AccessDeniedException'
        '500':
          description: InternalServerException
          content:
            application/x-amz-json-1.0:
              schema:
                $ref: '#/components/schemas/BcmPricingCalculatorInternalServerException'
        '429':
          description: ThrottlingException
          content:
            application/x-amz-json-1.0:
              schema:
                $ref: '#/components/schemas/BcmPricingCalculatorThrottlingException'
      parameters:
      - name: X-Amz-Target
        in: header
        required: true
        schema:
          type: string
          enum:
          - AWSBCMPricingCalculator.BatchCreateBillScenarioCommitmentModification
      requestBody:
        required: true
        content:
          application/x-amz-json-1.0:
            schema:
              $ref: '#/components/schemas/BatchCreateBillScenarioCommitmentModificationRequest'
      tags:
      - Bill Scenario Commitment Modification
  /#BatchDeleteBillScenarioCommitmentModification:
    post:
      operationId: BatchDeleteBillScenarioCommitmentModification
      summary: Batch Delete Bill Scenario Commitment Modification
      description: Delete commitment that you have created in a Bill Scenario. You can only delete a commitment that you had
        added and cannot model deletion (or removal) of a existing commitment. If you want model deletion of an existing commitment,
        see the negate BillScenarioCommitmentModificationAction of BatchCreateBillScenarioCommitmentModification operation.
        The BatchDeleteBillScenarioCommitmentModification operation doesn't have its own IAM permission. To authorize this
        operation for Amazon Web Services principals, include the permission bcm-pricing-calculator:DeleteBillScenarioCommitmentModification
        in your policies.
      responses:
        '200':
          description: Success
          content:
            application/x-amz-json-1.0:
              schema:
                $ref: '#/components/schemas/BatchDeleteBillScenarioCommitmentModificationResponse'
        '409':
          description: ConflictException
          content:
            application/x-amz-json-1.0:
              schema:
                $ref: '#/components/schemas/BcmPricingCalculatorConflictException'
        '400':
          description: DataUnavailableException; ValidationException
          content:
            application/x-amz-json-1.0:
              schema:
                $ref: '#/components/schemas/BcmPricingCalculatorDataUnavailableException'
        '404':
          description: ResourceNotFoundException
          content:
            application/x-amz-json-1.0:
              schema:
                $ref: '#/components/schemas/BcmPricingCalculatorResourceNotFoundException'
        '403':
          description: AccessDeniedException
          content:
            application/x-amz-json-1.0:
              schema:
                $ref: '#/components/schemas/AccessDeniedException'
        '500':
          description: InternalServerException
          content:
            application/x-amz-json-1.0:
              schema:
                $ref: '#/components/schemas/BcmPricingCalculatorInternalServerException'
        '429':
          description: ThrottlingException
          content:
            application/x-amz-json-1.0:
              schema:
                $ref: '#/components/schemas/BcmPricingCalculatorThrottlingException'
      parameters:
      - name: X-Amz-Target
        in: header
        required: true
        schema:
          type: string
          enum:
          - AWSBCMPricingCalculator.BatchDeleteBillScenarioCommitmentModification
      requestBody:
        required: true
        content:
          application/x-amz-json-1.0:
            schema:
              $ref: '#/components/schemas/BatchDeleteBillScenarioCommitmentModificationRequest'
      tags:
      - Bill Scenario Commitment Modification
  /#BatchUpdateBillScenarioCommitmentModification:
    post:
      operationId: BatchUpdateBillScenarioCommitmentModification
      summary: Batch Update Bill Scenario Commitment Modification
      description: Update a newly added or existing commitment. You can update the commitment group based on a commitment
        ID and a Bill scenario ID. The BatchUpdateBillScenarioCommitmentModification operation doesn't have its own IAM permission.
        To authorize this operation for Amazon Web Services principals, include the permission bcm-pricing-calculator:UpdateBillScenarioCommitmentModification
        in your policies.
      responses:
        '200':
          description: Success
          content:
            application/x-amz-json-1.0:
              schema:
                $ref: '#/components/schemas/BatchUpdateBillScenarioCommitmentModificationResponse'
        '409':
          description: ConflictException
          content:
            application/x-amz-json-1.0:
              schema:
                $ref: '#/components/schemas/BcmPricingCalculatorConflictException'
        '400':
          description: DataUnavailableException; ValidationException
          content:
            application/x-amz-json-1.0:
              schema:
                $ref: '#/components/schemas/BcmPricingCalculatorDataUnavailableException'
        '404':
          description: ResourceNotFoundException
          content:
            application/x-amz-json-1.0:
              schema:
                $ref: '#/components/schemas/BcmPricingCalculatorResourceNotFoundException'
        '403':
          description: AccessDeniedException
          content:
            application/x-amz-json-1.0:
              schema:
                $ref: '#/components/schemas/AccessDeniedException'
        '500':
          description: InternalServerException
          content:
            application/x-amz-json-1.0:
              schema:
                $ref: '#/components/schemas/BcmPricingCalculatorInternalServerException'
        '429':
          description: ThrottlingException
          content:
            application/x-amz-json-1.0:
              schema:
                $ref: '#/components/schemas/BcmPricingCalculatorThrottlingException'
      parameters:
      - name: X-Amz-Target
        in: header
        required: true
        schema:
          type: string
          enum:
          - AWSBCMPricingCalculator.BatchUpdateBillScenarioCommitmentModification
      requestBody:
        required: true
        content:
          application/x-amz-json-1.0:
            schema:
              $ref: '#/components/schemas/BatchUpdateBillScenarioCommitmentModificationRequest'
      tags:
      - Bill Scenario Commitment Modification
  /#ListBillScenarioCommitmentModifications:
    post:
      operationId: ListBillScenarioCommitmentModifications
      summary: List Bill Scenario Commitment Modifications
      description: Lists the commitment modifications associated with a bill scenario.
      responses:
        '200':
          description: Success
          content:
            application/x-amz-json-1.0:
              schema:
                $ref: '#/components/schemas/ListBillScenarioCommitmentModificationsResponse'
        '400':
          description: DataUnavailableException; ValidationException
          content:
            application/x-amz-json-1.0:
              schema:
                $ref: '#/components/schemas/BcmPricingCalculatorDataUnavailableException'
        '404':
          description: ResourceNotFoundException
          content:
            application/x-amz-json-1.0:
              schema:
                $ref: '#/components/schemas/BcmPricingCalculatorResourceNotFoundException'
        '403':
          description: AccessDeniedException
          content:
            application/x-amz-json-1.0:
              schema:
                $ref: '#/components/schemas/AccessDeniedException'
        '500':
          description: InternalServerException
          content:
            application/x-amz-json-1.0:
              schema:
                $ref: '#/components/schemas/BcmPricingCalculatorInternalServerException'
        '429':
          description: ThrottlingException
          content:
            application/x-amz-json-1.0:
              schema:
                $ref: '#/components/schemas/BcmPricingCalculatorThrottlingException'
      parameters:
      - name: X-Amz-Target
        in: header
        required: true
        schema:
          type: string
          enum:
          - AWSBCMPricingCalculator.ListBillScenarioCommitmentModifications
      requestBody:
        required: true
        content:
          application/x-amz-json-1.0:
            schema:
              $ref: '#/components/schemas/ListBillScenarioCommitmentModificationsRequest'
      tags:
      - Bill Scenario Commitment Modification
components:
  securitySchemes:
    sigv4:
      type: apiKey
      in: header
      name: Authorization
      description: AWS Signature Version 4. The Authorization header carries an AWS4-HMAC-SHA256 signature over the canonical
        request, with X-Amz-Date (and X-Amz-Security-Token for temporary credentials). Not a bearer token.
      x-aws-sigv4:
        signingName: bcm-pricing-calculator
  schemas:
    AccessDeniedException:
      type: object
      properties:
        message:
          type: string
      required:
      - message
    AddReservedInstanceAction:
      type: object
      properties:
        reservedInstancesOfferingId:
          type: string
          description: The ID of the Reserved Instance offering to add. For more information, see DescribeReservedInstancesOfferings.
        instanceCount:
          type: integer
          description: The number of instances to add for this Reserved Instance offering.
    AddSavingsPlanAction:
      type: object
      properties:
        savingsPlanOfferingId:
          type: string
          description: The ID of the Savings Plan offering to add. For more information, see DescribeSavingsPlansOfferings.
        commitment:
          type: number
          description: 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.
    BatchCreateBillScenarioCommitmentModificationEntry:
      type: object
      properties:
        key:
          type: string
          description: 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.
        group:
          type: string
          description: An optional group identifier for the commitment modification.
        usageAccountId:
          type: string
          description: The Amazon Web Services account ID to which this commitment will be applied to.
        commitmentAction:
          $ref: '#/components/schemas/BillScenarioCommitmentModificationAction'
      required:
      - key
      - usageAccountId
      - commitmentAction
    BatchCreateBillScenarioCommitmentModificationError:
      type: object
      properties:
        key:
          type: string
          description: The key of the entry that caused the error.
        errorMessage:
          type: string
          description: A descriptive message for the error that occurred.
        errorCode:
          type: string
          enum:
          - CONFLICT
          - INTERNAL_SERVER_ERROR
          - INVALID_ACCOUNT
          description: The error code associated with the failed operation.
    BatchCreateBillScenarioCommitmentModificationItem:
      type: object
      properties:
        key:
          type: string
          description: 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.
        id:
          type: string
          description: The unique identifier assigned to the created commitment modification.
        group:
          type: string
          description: The group identifier for the created commitment modification.
        usageAccountId:
          type: string
          description: The Amazon Web Services account ID associated with the created commitment modification.
        commitmentAction:
          $ref: '#/components/schemas/BillScenarioCommitmentModificationAction'
    BatchCreateBillScenarioCommitmentModificationRequest:
      type: object
      properties:
        billScenarioId:
          type: string
          description: The ID of the Bill Scenario for which you want to create the modeled commitment.
        commitmentModifications:
          type: array
          items:
            $ref: '#/components/schemas/BatchCreateBillScenarioCommitmentModificationEntry'
          description: List of commitments that you want to model in the Bill Scenario.
        clientToken:
          type: string
          description: A unique, case-sensitive identifier that you provide to ensure the idempotency of the request.
      required:
      - billScenarioId
      - commitmentModifications
    BatchCreateBillScenarioCommitmentModificationResponse:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/BatchCreateBillScenarioCommitmentModificationItem'
          description: Returns the list of successful commitment line items that were created for the Bill Scenario.
        errors:
          type: array
          items:
            $ref: '#/components/schemas/BatchCreateBillScenarioCommitmentModificationError'
          description: Returns the list of errors reason and the commitment item keys that cannot be created in the Bill Scenario.
    BatchDeleteBillScenarioCommitmentModificationError:
      type: object
      properties:
        id:
          type: string
          description: The ID of the error.
        errorCode:
          type: string
          enum:
          - BAD_REQUEST
          - CONFLICT
          - INTERNAL_SERVER_ERROR
          description: The code associated with the error.
        errorMessage:
          type: string
          description: The message that describes the error.
    BatchDeleteBillScenarioCommitmentModificationRequest:
      type: object
      properties:
        billScenarioId:
          type: string
          description: The ID of the Bill Scenario for which you want to delete the modeled commitment.
        ids:
          type: array
          items:
            type: string
          description: List of commitments that you want to delete from the Bill Scenario.
      required:
      - billScenarioId
      - ids
    BatchDeleteBillScenarioCommitmentModificationResponse:
      type: object
      properties:
        errors:
          type: array
          items:
            $ref: '#/components/schemas/BatchDeleteBillScenarioCommitmentModificationError'
          description: Returns the list of errors reason and the commitment item keys that cannot be deleted from the Bill
            Scenario.
    BatchUpdateBillScenarioCommitmentModificationEntry:
      type: object
      properties:
        id:
          type: string
          description: The unique identifier of the commitment modification to update.
        group:
          type: string
          description: The updated group identifier for the commitment modification.
      required:
      - id
    BatchUpdateBillScenarioCommitmentModificationError:
      type: object
      properties:
        id:
          type: string
          description: The ID of the error.
        errorCode:
          type: string
          enum:
          - BAD_REQUEST
          - NOT_FOUND
          - CONFLICT
          - INTERNAL_SERVER_ERROR
          description: The code associated with the error.
        errorMessage:
          type: string
          description: The message that describes the error.
    BatchUpdateBillScenarioCommitmentModificationRequest:
      type: object
      properties:
        billScenarioId:
          type: string
          description: The ID of the Bill Scenario for which you want to modify the commitment group of a modeled commitment.
        commitmentModifications:
          type: array
          items:
            $ref: '#/components/schemas/BatchUpdateBillScenarioCommitmentModificationEntry'
          description: List of commitments that you want to update in a Bill Scenario.
      required:
      - billScenarioId
      - commitmentModifications
    BatchUpdateBillScenarioCommitmentModificationResponse:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/BillScenarioCommitmentModificationItem'
          description: Returns the list of successful commitment line items that were updated for a Bill Scenario.
        errors:
          type: array
          items:
            $ref: '#/components/schemas/BatchUpdateBillScenarioCommitmentModificationError'
          description: Returns the list of error reasons and commitment line item IDs that could not be updated for the Bill
            Scenario.
    BcmPricingCalculatorConflictException:
      type: object
      properties:
        message:
          type: string
        resourceId:
          type: string
          description: The identifier of the resource that was not found.
        resourceType:
          type: string
          description: The type of the resource that was not found.
      required:
      - message
      - resourceId
      - resourceType
    BcmPricingCalculatorDataUnavailableException:
      type: object
      properties:
        message:
          type: string
      required:
      - message
    BcmPricingCalculatorInternalServerException:
      type: object
      properties:
        message:
          type: string
        retryAfterSeconds:
          type: integer
          description: An internal error has occurred. Retry your request, but if the problem persists, contact Amazon Web
            Services support.
      required:
      - message
    BcmPricingCalculatorResourceNotFoundException:
      type: object
      properties:
        message:
          type: string
        resourceId:
          type: string
          description: The identifier of the resource that was not found.
        resourceType:
          type: string
          description: The type of the resource that was not found.
      required:
      - message
      - resourceId
      - resourceType
    BcmPricingCalculatorThrottlingException:
      type: object
      properties:
        message:
          type: string
        serviceCode:
          type: string
          description: The service code that exceeded the throttling limit.
        quotaCode:
          type: string
          description: The quota code that exceeded the throttling limit.
        retryAfterSeconds:
          type: integer
          description: The service code that exceeded the throttling limit. Retry your request, but if the problem persists,
            contact Amazon Web Services support.
      required:
      - message
    BillScenarioCommitmentModificationAction:
      type: object
      properties:
        addReservedInstanceAction:
          $ref: '#/components/schemas/AddReservedInstanceAction'
        addSavingsPlanAction:
          $ref: '#/components/schemas/AddSavingsPlanAction'
        negateReservedInstanceAction:
          $ref: '#/components/schemas/NegateReservedInstanceAction'
        negateSavingsPlanAction:
          $ref: '#/components/schemas/NegateSavingsPlanAction'
      description: Exactly one member is set.
    BillScenarioCommitmentModificationItem:
      type: object
      properties:
        id:
          type: string
          description: The unique identifier of the commitment modification.
        usageAccountId:
          type: string
          description: The Amazon Web Services account ID associated with this commitment modification.
        group:
          type: string
          description: The group identifier for the commitment modification.
        commitmentAction:
          $ref: '#/components/schemas/BillScenarioCommitmentModificationAction'
    ListBillScenarioCommitmentModificationsRequest:
      type: object
      properties:
        billScenarioId:
          type: string
          description: The unique identifier of the bill scenario to list commitment modifications for.
        nextToken:
          type: string
          description: A token to retrieve the next page of results.
        maxResults:
          type: integer
          description: The maximum number of results to return per page.
      required:
      - billScenarioId
    ListBillScenarioCommitmentModificationsResponse:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/BillScenarioCommitmentModificationItem'
          description: The list of commitment modifications associated with the bill scenario.
        nextToken:
          type: string
          description: A token to retrieve the next page of results, if any.
    NegateReservedInstanceAction:
      type: object
      properties:
        reservedInstancesId:
          type: string
          description: The ID of the Reserved Instance to remove.
    NegateSavingsPlanAction:
      type: object
      properties:
        savingsPlanId:
          type: string
          description: The ID of the Savings Plan to remove.
x-provenance:
  method: harvested
  publisher: Amazon Web Services
  source: https://raw.githubusercontent.com/aws/api-models-aws/3cd98287b471c106254abd89279cc87308d38bfd/models/bcm-pricing-calculator/service/2024-06-19/bcm-pricing-calculator-2024-06-19.json
  note: converted by smithy-to-openapi.py from AWS's Smithy model (roadmap#1001)