Amazon SageMaker Sagemaker Training Plan API

The Sagemaker Training Plan API from Amazon SageMaker — 3 operation(s) for sagemaker training plan.

Operations 3

POST /#CreateTrainingPlan Create Training Plan #
POST /#DescribeTrainingPlan Describe Training Plan #
POST /#ListTrainingPlans List Training Plans #

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-sagemaker:amazon-sagemaker-training-plan-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-sagemaker-training-plan-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Amazon SageMaker Service Training Plan API
  version: '2017-07-24'
  description: Generated from AWS's published Smithy model for Amazon SageMaker Service. 3 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://api.sagemaker.{region}.amazonaws.com
  variables:
    region:
      default: us-east-1
security:
- sigv4: []
paths:
  /#CreateTrainingPlan:
    post:
      operationId: CreateTrainingPlan
      summary: Create Training Plan
      description: 'Creates a new training plan in SageMaker to reserve compute capacity. Amazon SageMaker Training Plan is
        a capability within SageMaker that allows customers to reserve and manage GPU capacity for large-scale AI model training.
        It provides a way to secure predictable access to computational resources within specific timelines and budgets, without
        the need to manage underlying infrastructure. How it works Plans can be created for specific resources such as SageMaker
        Training Jobs or SageMaker HyperPod clusters, automatically provisioning resources, setting up infrastructure, executing
        workloads, and handling infrastructure failures. Plan creation workflow Users search for available plan offerings
        based on their requirements (e.g., instance type, count, start time, duration) using the SearchTrainingPlanOfferings
        API operation. They create a plan that best matches their needs using the ID of the plan offering they want to use.
        After successful upfront payment, the plan''s status becomes Scheduled. The plan can be used to: Queue training jobs.
        Allocate to an instance group of a SageMaker HyperPod cluster. When the plan start date arrives, it becomes Active.
        Based on available reserved cap'
      responses:
        '200':
          description: Success
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/CreateTrainingPlanResponse'
        '400':
          description: ResourceInUse; ResourceLimitExceeded; ResourceNotFound
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/ResourceInUse'
      parameters:
      - name: X-Amz-Target
        in: header
        required: true
        schema:
          type: string
          enum:
          - SageMaker.CreateTrainingPlan
      requestBody:
        required: true
        content:
          application/x-amz-json-1.1:
            schema:
              $ref: '#/components/schemas/CreateTrainingPlanRequest'
      tags:
      - Training Plan
  /#DescribeTrainingPlan:
    post:
      operationId: DescribeTrainingPlan
      summary: Describe Training Plan
      description: Retrieves detailed information about a specific training plan.
      responses:
        '200':
          description: Success
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/DescribeTrainingPlanResponse'
        '400':
          description: ResourceNotFound
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/ResourceNotFound'
      parameters:
      - name: X-Amz-Target
        in: header
        required: true
        schema:
          type: string
          enum:
          - SageMaker.DescribeTrainingPlan
      requestBody:
        required: true
        content:
          application/x-amz-json-1.1:
            schema:
              $ref: '#/components/schemas/DescribeTrainingPlanRequest'
      tags:
      - Training Plan
  /#ListTrainingPlans:
    post:
      operationId: ListTrainingPlans
      summary: List Training Plans
      description: Retrieves a list of training plans for the current account.
      responses:
        '200':
          description: Success
          content:
            application/x-amz-json-1.1:
              schema:
                $ref: '#/components/schemas/ListTrainingPlansResponse'
      parameters:
      - name: X-Amz-Target
        in: header
        required: true
        schema:
          type: string
          enum:
          - SageMaker.ListTrainingPlans
      requestBody:
        required: true
        content:
          application/x-amz-json-1.1:
            schema:
              $ref: '#/components/schemas/ListTrainingPlansRequest'
      tags:
      - Training Plan
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: sagemaker
  schemas:
    CreateTrainingPlanRequest:
      type: object
      properties:
        TrainingPlanName:
          type: string
          description: The name of the training plan to create.
        TrainingPlanOfferingId:
          type: string
          description: The unique identifier of the training plan offering to use for creating this plan.
        SpareInstanceCountPerUltraServer:
          type: integer
          description: Number of spare instances to reserve per UltraServer for enhanced resiliency. Default is 1.
        Tags:
          type: array
          items:
            $ref: '#/components/schemas/Tag'
          description: An array of key-value pairs to apply to this training plan.
      required:
      - TrainingPlanName
      - TrainingPlanOfferingId
    CreateTrainingPlanResponse:
      type: object
      properties:
        TrainingPlanArn:
          type: string
          description: The Amazon Resource Name (ARN); of the created training plan.
      required:
      - TrainingPlanArn
    DescribeTrainingPlanRequest:
      type: object
      properties:
        TrainingPlanName:
          type: string
          description: The name of the training plan to describe.
      required:
      - TrainingPlanName
    DescribeTrainingPlanResponse:
      type: object
      properties:
        TrainingPlanArn:
          type: string
          description: The Amazon Resource Name (ARN); of the training plan.
        TrainingPlanName:
          type: string
          description: The name of the training plan.
        Status:
          type: string
          enum:
          - Pending
          - Active
          - Scheduled
          - Expired
          - Failed
          description: The current status of the training plan (e.g., Pending, Active, Expired). To see the complete list
            of status values available for a training plan, refer to the Status attribute within the TrainingPlanSummary object.
        StatusMessage:
          type: string
          description: A message providing additional information about the current status of the training plan.
        DurationHours:
          type: integer
          description: The number of whole hours in the total duration for this training plan.
        DurationMinutes:
          type: integer
          description: The additional minutes beyond whole hours in the total duration for this training plan.
        StartTime:
          type: string
          format: date-time
          description: The start time of the training plan.
        EndTime:
          type: string
          format: date-time
          description: The end time of the training plan.
        UpfrontFee:
          type: string
          description: The upfront fee for the training plan.
        CurrencyCode:
          type: string
          description: The currency code for the upfront fee (e.g., USD).
        TotalInstanceCount:
          type: integer
          description: The total number of instances reserved in this training plan.
        AvailableInstanceCount:
          type: integer
          description: The number of instances currently available for use in this training plan.
        InUseInstanceCount:
          type: integer
          description: The number of instances currently in use from this training plan.
        UnhealthyInstanceCount:
          type: integer
          description: The number of instances in the training plan that are currently in an unhealthy state.
        AvailableSpareInstanceCount:
          type: integer
          description: The number of available spare instances in the training plan.
        TotalUltraServerCount:
          type: integer
          description: The total number of UltraServers reserved to this training plan.
        TargetResources:
          type: array
          items:
            type: string
            enum:
            - training-job
            - hyperpod-cluster
            - endpoint
            - studio-apps
          description: The target resources (e.g., SageMaker Training Jobs, SageMaker HyperPod, SageMaker Endpoints, Studio
            apps) that can use this training plan. Training plans are specific to their target resource. A training plan designed
            for SageMaker training jobs can only be used to schedule and run training jobs. A training plan for HyperPod clusters
            can be used exclusively to provide compute resources to a cluster's instance group. A training plan for SageMaker
            endpoints can be used exclusively to provide compute resources to SageMaker endpoints for model deployment. A
            training plan for Studio apps can be us
        ReservedCapacitySummaries:
          type: array
          items:
            $ref: '#/components/schemas/ReservedCapacitySummary'
          description: The list of Reserved Capacity providing the underlying compute resources of the plan.
      required:
      - TrainingPlanArn
      - TrainingPlanName
      - Status
    ListTrainingPlansRequest:
      type: object
      properties:
        NextToken:
          type: string
          description: A token to continue pagination if more results are available.
        MaxResults:
          type: integer
          description: The maximum number of results to return in the response.
        StartTimeAfter:
          type: string
          format: date-time
          description: Filter to list only training plans with an actual start time after this date.
        StartTimeBefore:
          type: string
          format: date-time
          description: Filter to list only training plans with an actual start time before this date.
        SortBy:
          type: string
          enum:
          - TrainingPlanName
          - StartTime
          - Status
          description: The training plan field to sort the results by (e.g., StartTime, Status).
        SortOrder:
          type: string
          enum:
          - Ascending
          - Descending
          description: The order to sort the results (Ascending or Descending).
        Filters:
          type: array
          items:
            $ref: '#/components/schemas/TrainingPlanFilter'
          description: Additional filters to apply to the list of training plans.
    ListTrainingPlansResponse:
      type: object
      properties:
        NextToken:
          type: string
          description: A token to continue pagination if more results are available.
        TrainingPlanSummaries:
          type: array
          items:
            $ref: '#/components/schemas/TrainingPlanSummary'
          description: A list of summary information for the training plans.
      required:
      - TrainingPlanSummaries
    ReservedCapacitySummary:
      type: object
      properties:
        ReservedCapacityArn:
          type: string
          description: The Amazon Resource Name (ARN); of the reserved capacity.
        ReservedCapacityType:
          type: string
          enum:
          - UltraServer
          - Instance
          description: The type of reserved capacity.
        UltraServerType:
          type: string
          description: The type of UltraServer included in this reserved capacity, such as ml.u-p6e-gb200x72.
        UltraServerCount:
          type: integer
          description: The number of UltraServers included in this reserved capacity.
        InstanceType:
          type: string
          enum:
          - ml.p4d.24xlarge
          - ml.p5.48xlarge
          - ml.p5e.48xlarge
          - ml.p5en.48xlarge
          - ml.trn1.32xlarge
          - ml.trn2.48xlarge
          - ml.p6-b200.48xlarge
          - ml.p4de.24xlarge
          - ml.p6e-gb200.36xlarge
          - ml.p5.4xlarge
          - ml.p6-b300.48xlarge
          description: The instance type for the reserved capacity.
        TotalInstanceCount:
          type: integer
          description: The total number of instances in the reserved capacity.
        Status:
          type: string
          enum:
          - Pending
          - Active
          - Scheduled
          - Expired
          - Failed
          description: The current status of the reserved capacity.
        AvailabilityZone:
          type: string
          description: The availability zone for the reserved capacity.
        AvailabilityZoneId:
          type: string
          description: The Availability Zone ID of the reserved capacity.
        DurationHours:
          type: integer
          description: The number of whole hours in the total duration for this reserved capacity.
        DurationMinutes:
          type: integer
          description: The additional minutes beyond whole hours in the total duration for this reserved capacity.
        StartTime:
          type: string
          format: date-time
          description: The start time of the reserved capacity.
        EndTime:
          type: string
          format: date-time
          description: The end time of the reserved capacity.
      required:
      - ReservedCapacityArn
      - InstanceType
      - TotalInstanceCount
      - Status
    ResourceInUse:
      type: object
      properties:
        Message:
          type: string
    ResourceNotFound:
      type: object
      properties:
        Message:
          type: string
    Tag:
      type: object
      properties:
        Key:
          type: string
          description: The tag key. Tag keys must be unique per resource.
        Value:
          type: string
          description: The tag value.
      required:
      - Key
      - Value
    TrainingPlanFilter:
      type: object
      properties:
        Name:
          type: string
          enum:
          - Status
          description: The name of the filter field (e.g., Status, InstanceType).
        Value:
          type: string
          description: The value to filter by for the specified field.
      required:
      - Name
      - Value
    TrainingPlanSummary:
      type: object
      properties:
        TrainingPlanArn:
          type: string
          description: The Amazon Resource Name (ARN); of the training plan.
        TrainingPlanName:
          type: string
          description: The name of the training plan.
        Status:
          type: string
          enum:
          - Pending
          - Active
          - Scheduled
          - Expired
          - Failed
          description: The current status of the training plan (e.g., Pending, Active, Expired). To see the complete list
            of status values available for a training plan, refer to the Status attribute within the TrainingPlanSummary object.
        StatusMessage:
          type: string
          description: A message providing additional information about the current status of the training plan.
        DurationHours:
          type: integer
          description: The number of whole hours in the total duration for this training plan.
        DurationMinutes:
          type: integer
          description: The additional minutes beyond whole hours in the total duration for this training plan.
        StartTime:
          type: string
          format: date-time
          description: The start time of the training plan.
        EndTime:
          type: string
          format: date-time
          description: The end time of the training plan.
        UpfrontFee:
          type: string
          description: The upfront fee for the training plan.
        CurrencyCode:
          type: string
          description: The currency code for the upfront fee (e.g., USD).
        TotalInstanceCount:
          type: integer
          description: The total number of instances reserved in this training plan.
        AvailableInstanceCount:
          type: integer
          description: The number of instances currently available for use in this training plan.
        InUseInstanceCount:
          type: integer
          description: The number of instances currently in use from this training plan.
        TotalUltraServerCount:
          type: integer
          description: The total number of UltraServers allocated to this training plan.
        TargetResources:
          type: array
          items:
            type: string
            enum:
            - training-job
            - hyperpod-cluster
            - endpoint
            - studio-apps
          description: The target resources (e.g., training jobs, HyperPod clusters, Endpoints, Studio apps) that can use
            this training plan. Training plans are specific to their target resource. A training plan designed for SageMaker
            training jobs can only be used to schedule and run training jobs. A training plan for HyperPod clusters can be
            used exclusively to provide compute resources to a cluster's instance group. A training plan for SageMaker endpoints
            can be used exclusively to provide compute resources to SageMaker endpoints for model deployment. A training plan
            for Studio apps can be used to launch JupyterL
        ReservedCapacitySummaries:
          type: array
          items:
            $ref: '#/components/schemas/ReservedCapacitySummary'
          description: A list of reserved capacities associated with this training plan, including details such as instance
            types, counts, and availability zones.
      required:
      - TrainingPlanArn
      - TrainingPlanName
      - Status
x-provenance:
  method: harvested
  publisher: Amazon Web Services
  source: https://raw.githubusercontent.com/aws/api-models-aws/582e55931c45b944739742a2c1620b6026dd2d13/models/sagemaker/service/2017-07-24/sagemaker-2017-07-24.json
  note: converted by smithy-to-openapi.py from AWS's Smithy model (roadmap#1001)