AWS Backup Backup Restore Testing API

The Backup Restore Testing API from AWS Backup — 3 operation(s) for backup restore testing.

Business capability
Disaster Recovery & Resilience BC-4220.60

Operations 6

PUT /restore-testing/plans Create Restore Testing Plan #
GET /restore-testing/plans List Restore Testing Plans #
DELETE /restore-testing/plans/{RestoreTestingPlanName} Delete Restore Testing Plan #
GET /restore-testing/plans/{RestoreTestingPlanName} Get Restore Testing Plan #
PUT /restore-testing/plans/{RestoreTestingPlanName} Update Restore Testing Plan #
GET /restore-testing/inferred-metadata Get Restore Testing Inferred Metadata #

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/aws-backup:aws-backup-restore-testing-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

aws-backup-restore-testing-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: AWS Backup Restore Testing API
  version: '2018-11-15'
  description: Generated from AWS's published Smithy model for AWS Backup. 6 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://backup.{region}.amazonaws.com
  variables:
    region:
      default: us-east-1
security:
- sigv4: []
tags:
- name: Restore Testing
paths:
  /restore-testing/plans:
    put:
      operationId: CreateRestoreTestingPlan
      summary: Create Restore Testing Plan
      description: Creates a restore testing plan. The first of two steps to create a restore testing plan. After this request is successful, finish the procedure using CreateRestoreTestingSelection.
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateRestoreTestingPlanOutput'
        '400':
          description: AlreadyExistsException; InvalidParameterValueException; LimitExceededException; MissingParameterValueException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AlreadyExistsException'
        '409':
          description: ConflictException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConflictException'
        '500':
          description: ServiceUnavailableException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceUnavailableException'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateRestoreTestingPlanInput'
      tags:
      - Restore Testing
    get:
      operationId: ListRestoreTestingPlans
      summary: List Restore Testing Plans
      description: Returns a list of restore testing plans.
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListRestoreTestingPlansOutput'
        '400':
          description: InvalidParameterValueException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidParameterValueException'
        '500':
          description: ServiceUnavailableException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceUnavailableException'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ListRestoreTestingPlansInput'
      tags:
      - Restore Testing
  /restore-testing/plans/{RestoreTestingPlanName}:
    delete:
      operationId: DeleteRestoreTestingPlan
      summary: Delete Restore Testing Plan
      description: This request deletes the specified restore testing plan. Deletion can only successfully occur if all associated restore testing selections are deleted first.
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: string
        '400':
          description: InvalidRequestException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidRequestException'
        '500':
          description: ServiceUnavailableException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceUnavailableException'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DeleteRestoreTestingPlanInput'
      tags:
      - Restore Testing
    get:
      operationId: GetRestoreTestingPlan
      summary: Get Restore Testing Plan
      description: Returns RestoreTestingPlan details for the specified RestoreTestingPlanName. The details are the body of a restore testing plan in JSON format, in addition to plan metadata.
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetRestoreTestingPlanOutput'
        '400':
          description: ResourceNotFoundException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResourceNotFoundException'
        '500':
          description: ServiceUnavailableException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceUnavailableException'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GetRestoreTestingPlanInput'
      tags:
      - Restore Testing
    put:
      operationId: UpdateRestoreTestingPlan
      summary: Update Restore Testing Plan
      description: 'This request will send changes to your specified restore testing plan. RestoreTestingPlanName cannot be updated after it is created. RecoveryPointSelection can contain: Algorithm ExcludeVaults IncludeVaults RecoveryPointTypes SelectionWindowDays'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateRestoreTestingPlanOutput'
        '409':
          description: ConflictException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConflictException'
        '400':
          description: InvalidParameterValueException; MissingParameterValueException; ResourceNotFoundException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidParameterValueException'
        '500':
          description: ServiceUnavailableException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceUnavailableException'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateRestoreTestingPlanInput'
      tags:
      - Restore Testing
  /restore-testing/inferred-metadata:
    get:
      operationId: GetRestoreTestingInferredMetadata
      summary: Get Restore Testing Inferred Metadata
      description: This request returns the minimal required set of metadata needed to start a restore job with secure default settings. BackupVaultName and RecoveryPointArn are required parameters. BackupVaultAccountId is an optional parameter.
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetRestoreTestingInferredMetadataOutput'
        '400':
          description: InvalidParameterValueException; MissingParameterValueException; ResourceNotFoundException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidParameterValueException'
        '500':
          description: ServiceUnavailableException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceUnavailableException'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GetRestoreTestingInferredMetadataInput'
      tags:
      - Restore Testing
components:
  schemas:
    AlreadyExistsException:
      type: object
      properties:
        Code:
          type: string
        Message:
          type: string
        CreatorRequestId:
          type: string
        Arn:
          type: string
        Type:
          type: string
        Context:
          type: string
    InvalidParameterValueException:
      type: object
      properties:
        Code:
          type: string
        Message:
          type: string
        Type:
          type: string
        Context:
          type: string
    UpdateRestoreTestingPlanOutput:
      type: object
      properties:
        CreationTime:
          type: string
          description: The time the resource testing plan was created.
        RestoreTestingPlanArn:
          type: string
          description: Unique ARN (Amazon Resource Name) of the restore testing plan.
        RestoreTestingPlanName:
          type: string
          description: The name cannot be changed after creation. The name consists of only alphanumeric characters and underscores. Maximum length is 50.
        UpdateTime:
          type: string
          description: The time the update completed for the restore testing plan.
      required:
      - CreationTime
      - RestoreTestingPlanArn
      - RestoreTestingPlanName
      - UpdateTime
    RestoreTestingRecoveryPointSelection:
      type: object
      properties:
        Algorithm:
          type: string
          enum:
          - LATEST_WITHIN_WINDOW
          - RANDOM_WITHIN_WINDOW
          description: Acceptable values include "LATEST_WITHIN_WINDOW" or "RANDOM_WITHIN_WINDOW"
        ExcludeVaults:
          type: array
          items:
            type: string
          description: Accepted values include specific ARNs or list of selectors. Defaults to empty list if not listed.
        IncludeVaults:
          type: array
          items:
            type: string
          description: Accepted values include wildcard ["*"] or by specific ARNs or ARN wilcard replacement ["arn:aws:backup:us-west-2:123456789012:backup-vault:asdf", ...] ["arn:aws:backup:*:*:backup-vault:asdf-*", ...]
        RecoveryPointTypes:
          type: array
          items:
            type: string
            enum:
            - CONTINUOUS
            - SNAPSHOT
          description: These are the types of recovery points. Include SNAPSHOT to restore only snapshot recovery points; include CONTINUOUS to restore continuous recovery points (point in time restore / PITR); use both to restore either a snapshot or a continuous recovery point. The recovery point will be determined by the value for Algorithm.
        SelectionWindowDays:
          type: integer
          description: Accepted values are integers from 1 to 365. If not included, the value defaults to 30. The selection window is calculated from the actual job execution time, not the plan's scheduled start time.
    UpdateRestoreTestingPlanInput:
      type: object
      properties:
        RestoreTestingPlan:
          $ref: '#/components/schemas/RestoreTestingPlanForUpdate'
        RestoreTestingPlanName:
          type: string
          description: The name of the restore testing plan name.
      required:
      - RestoreTestingPlan
      - RestoreTestingPlanName
    CreateRestoreTestingPlanOutput:
      type: object
      properties:
        CreationTime:
          type: string
          description: The date and time a restore testing plan was created, in Unix format and Coordinated Universal Time (UTC). The value of CreationTime is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087AM.
        RestoreTestingPlanArn:
          type: string
          description: An Amazon Resource Name (ARN) that uniquely identifies the created restore testing plan.
        RestoreTestingPlanName:
          type: string
          description: This unique string is the name of the restore testing plan. The name cannot be changed after creation. The name consists of only alphanumeric characters and underscores. Maximum length is 50.
      required:
      - CreationTime
      - RestoreTestingPlanArn
      - RestoreTestingPlanName
    GetRestoreTestingInferredMetadataOutput:
      type: object
      properties:
        InferredMetadata:
          type: object
          additionalProperties:
            type: string
          description: This is a string map of the metadata inferred from the request.
      required:
      - InferredMetadata
    ServiceUnavailableException:
      type: object
      properties:
        Code:
          type: string
        Message:
          type: string
        Type:
          type: string
        Context:
          type: string
    InvalidRequestException:
      type: object
      properties:
        Code:
          type: string
        Message:
          type: string
        Type:
          type: string
        Context:
          type: string
    CreateRestoreTestingPlanInput:
      type: object
      properties:
        CreatorRequestId:
          type: string
          description: This is a unique string that identifies the request and allows failed requests to be retriedwithout the risk of running the operation twice. This parameter is optional. If used, this parameter must contain 1 to 50 alphanumeric or '-_.' characters.
        RestoreTestingPlan:
          $ref: '#/components/schemas/RestoreTestingPlanForCreate'
        Tags:
          type: object
          additionalProperties:
            type: string
          description: The tags to assign to the restore testing plan.
      required:
      - RestoreTestingPlan
    GetRestoreTestingInferredMetadataInput:
      type: object
      properties:
        BackupVaultAccountId:
          type: string
          description: The account ID of the specified backup vault.
        BackupVaultName:
          type: string
          description: The name of a logical container where backups are stored. Backup vaults are identified by names that are unique to the account used to create them and the Amazon Web ServicesRegion where they are created. They consist of letters, numbers, and hyphens.
        RecoveryPointArn:
          type: string
          description: An Amazon Resource Name (ARN) that uniquely identifies a recovery point; for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45.
      required:
      - BackupVaultName
      - RecoveryPointArn
    GetRestoreTestingPlanOutput:
      type: object
      properties:
        RestoreTestingPlan:
          $ref: '#/components/schemas/RestoreTestingPlanForGet'
      required:
      - RestoreTestingPlan
    ListRestoreTestingPlansOutput:
      type: object
      properties:
        NextToken:
          type: string
          description: The next item following a partial list of returned items. For example, if a request is made to return MaxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the nexttoken.
        RestoreTestingPlans:
          type: array
          items:
            $ref: '#/components/schemas/RestoreTestingPlanForList'
          description: This is a returned list of restore testing plans.
      required:
      - RestoreTestingPlans
    RestoreTestingPlanForCreate:
      type: object
      properties:
        RecoveryPointSelection:
          $ref: '#/components/schemas/RestoreTestingRecoveryPointSelection'
        RestoreTestingPlanName:
          type: string
          description: The RestoreTestingPlanName is a unique string that is the name of the restore testing plan. This cannot be changed after creation, and it must consist of only alphanumeric characters and underscores.
        ScheduleExpression:
          type: string
          description: A CRON expression in specified timezone when a restore testing plan is executed. When no CRON expression is provided, Backup will use the default expression cron(0 5 ? * * *).
        ScheduleExpressionTimezone:
          type: string
          description: Optional. This is the timezone in which the schedule expression is set. By default, ScheduleExpressions are in UTC. You can modify this to a specified timezone.
        StartWindowHours:
          type: integer
          description: Defaults to 24 hours. A value in hours after a restore test is scheduled before a job will be canceled if it doesn't start successfully. This value is optional. If this value is included, this parameter has a maximum value of 168 hours (one week).
      required:
      - RecoveryPointSelection
      - RestoreTestingPlanName
      - ScheduleExpression
    RestoreTestingPlanForGet:
      type: object
      properties:
        CreationTime:
          type: string
          description: The date and time that a restore testing plan was created, in Unix format and Coordinated Universal Time (UTC). The value of CreationTime is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.
        CreatorRequestId:
          type: string
          description: This identifies the request and allows failed requests to be retried without the risk of running the operation twice. If the request includes a CreatorRequestId that matches an existing backup plan, that plan is returned. This parameter is optional. If used, this parameter must contain 1 to 50 alphanumeric or '-_.' characters.
        LastExecutionTime:
          type: string
          description: The last time a restore test was run with the specified restore testing plan. A date and time, in Unix format and Coordinated Universal Time (UTC). The value of LastExecutionDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.
        LastUpdateTime:
          type: string
          description: The date and time that the restore testing plan was updated. This update is in Unix format and Coordinated Universal Time (UTC). The value of LastUpdateTime is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.
        RecoveryPointSelection:
          $ref: '#/components/schemas/RestoreTestingRecoveryPointSelection'
        RestoreTestingPlanArn:
          type: string
          description: An Amazon Resource Name (ARN) that uniquely identifies a restore testing plan.
        RestoreTestingPlanName:
          type: string
          description: The restore testing plan name.
        ScheduleExpression:
          type: string
          description: A CRON expression in specified timezone when a restore testing plan is executed. When no CRON expression is provided, Backup will use the default expression cron(0 5 ? * * *).
        ScheduleExpressionTimezone:
          type: string
          description: Optional. This is the timezone in which the schedule expression is set. By default, ScheduleExpressions are in UTC. You can modify this to a specified timezone.
        StartWindowHours:
          type: integer
          description: Defaults to 24 hours. A value in hours after a restore test is scheduled before a job will be canceled if it doesn't start successfully. This value is optional. If this value is included, this parameter has a maximum value of 168 hours (one week).
      required:
      - CreationTime
      - RecoveryPointSelection
      - RestoreTestingPlanArn
      - RestoreTestingPlanName
      - ScheduleExpression
    GetRestoreTestingPlanInput:
      type: object
      properties:
        RestoreTestingPlanName:
          type: string
          description: Required unique name of the restore testing plan.
      required:
      - RestoreTestingPlanName
    RestoreTestingPlanForUpdate:
      type: object
      properties:
        RecoveryPointSelection:
          $ref: '#/components/schemas/RestoreTestingRecoveryPointSelection'
        ScheduleExpression:
          type: string
          description: A CRON expression in specified timezone when a restore testing plan is executed. When no CRON expression is provided, Backup will use the default expression cron(0 5 ? * * *).
        ScheduleExpressionTimezone:
          type: string
          description: Optional. This is the timezone in which the schedule expression is set. By default, ScheduleExpressions are in UTC. You can modify this to a specified timezone.
        StartWindowHours:
          type: integer
          description: Defaults to 24 hours. A value in hours after a restore test is scheduled before a job will be canceled if it doesn't start successfully. This value is optional. If this value is included, this parameter has a maximum value of 168 hours (one week).
    DeleteRestoreTestingPlanInput:
      type: object
      properties:
        RestoreTestingPlanName:
          type: string
          description: Required unique name of the restore testing plan you wish to delete.
      required:
      - RestoreTestingPlanName
    RestoreTestingPlanForList:
      type: object
      properties:
        CreationTime:
          type: string
          description: The date and time that a restore testing plan was created, in Unix format and Coordinated Universal Time (UTC). The value of CreationTime is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.
        LastExecutionTime:
          type: string
          description: The last time a restore test was run with the specified restore testing plan. A date and time, in Unix format and Coordinated Universal Time (UTC). The value of LastExecutionDate is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.
        LastUpdateTime:
          type: string
          description: The date and time that the restore testing plan was updated. This update is in Unix format and Coordinated Universal Time (UTC). The value of LastUpdateTime is accurate to milliseconds. For example, the value 1516925490.087 represents Friday, January 26, 2018 12:11:30.087 AM.
        RestoreTestingPlanArn:
          type: string
          description: An Amazon Resource Name (ARN) that uniquely identifiesa restore testing plan.
        RestoreTestingPlanName:
          type: string
          description: The restore testing plan name.
        ScheduleExpression:
          type: string
          description: A CRON expression in specified timezone when a restore testing plan is executed. When no CRON expression is provided, Backup will use the default expression cron(0 5 ? * * *).
        ScheduleExpressionTimezone:
          type: string
          description: Optional. This is the timezone in which the schedule expression is set. By default, ScheduleExpressions are in UTC. You can modify this to a specified timezone.
        StartWindowHours:
          type: integer
          description: Defaults to 24 hours. A value in hours after a restore test is scheduled before a job will be canceled if it doesn't start successfully. This value is optional. If this value is included, this parameter has a maximum value of 168 hours (one week).
      required:
      - CreationTime
      - RestoreTestingPlanArn
      - RestoreTestingPlanName
      - ScheduleExpression
    ResourceNotFoundException:
      type: object
      properties:
        Code:
          type: string
        Message:
          type: string
        Type:
          type: string
        Context:
          type: string
    ListRestoreTestingPlansInput:
      type: object
      properties:
        MaxResults:
          type: integer
          description: The maximum number of items to be returned.
        NextToken:
          type: string
          description: The next item following a partial list of returned items. For example, if a request is made to return MaxResults number of items, NextToken allows you to return more items in your list starting at the location pointed to by the nexttoken.
    ConflictException:
      type: object
      properties:
        Code:
          type: string
        Message:
          type: string
        Type:
          type: string
        Context:
          type: string
  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: backup
x-provenance:
  method: harvested
  publisher: Amazon Web Services
  source: https://raw.githubusercontent.com/aws/api-models-aws/582e55931c45b944739742a2c1620b6026dd2d13/models/backup/service/2018-11-15/backup-2018-11-15.json
  note: converted by smithy-to-openapi.py from AWS's Smithy model (roadmap#1001)