AWS Backup Backup Legal Holds API

The Backup Legal Holds API from AWS Backup — 2 operation(s) for backup legal holds.

Operations 4

DELETE /legal-holds/{LegalHoldId} Cancel Legal Hold #
GET /legal-holds/{LegalHoldId} Get Legal Hold #
POST /legal-holds Create Legal Hold #
GET /legal-holds List Legal Holds #

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-legal-holds-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-legal-holds-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: AWS Backup Legal Holds API
  version: '2018-11-15'
  description: Generated from AWS's published Smithy model for AWS Backup. 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://backup.{region}.amazonaws.com
  variables:
    region:
      default: us-east-1
security:
- sigv4: []
tags:
- name: Legal Holds
paths:
  /legal-holds/{LegalHoldId}:
    delete:
      operationId: CancelLegalHold
      summary: Cancel Legal Hold
      description: Removes the specified legal hold on a recovery point. This action can only be performed by a user with sufficient permissions.
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CancelLegalHoldOutput'
        '400':
          description: InvalidParameterValueException; InvalidResourceStateException; 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/CancelLegalHoldInput'
      tags:
      - Legal Holds
    get:
      operationId: GetLegalHold
      summary: Get Legal Hold
      description: This action returns details for a specified legal hold. The details are the body of a legal hold in JSON format, in addition to metadata.
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetLegalHoldOutput'
        '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/GetLegalHoldInput'
      tags:
      - Legal Holds
  /legal-holds:
    post:
      operationId: CreateLegalHold
      summary: Create Legal Hold
      description: Creates a legal hold on a recovery point (backup). A legal hold is a restraint on altering or deleting a backup until an authorized user cancels the legal hold. Any actions to delete or disassociate a recovery point will fail with an error if one or more active legal holds are on the recovery point.
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateLegalHoldOutput'
        '400':
          description: InvalidParameterValueException; LimitExceededException; MissingParameterValueException
          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/CreateLegalHoldInput'
      tags:
      - Legal Holds
    get:
      operationId: ListLegalHolds
      summary: List Legal Holds
      description: This action returns metadata about active and previous legal holds.
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListLegalHoldsOutput'
        '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/ListLegalHoldsInput'
      tags:
      - Legal Holds
components:
  schemas:
    CreateLegalHoldInput:
      type: object
      properties:
        Title:
          type: string
          description: The title of the legal hold.
        Description:
          type: string
          description: The description of the legal hold.
        IdempotencyToken:
          type: string
          description: This is a user-chosen string used to distinguish between otherwise identical calls. Retrying a successful request with the same idempotency token results in a success message with no action taken.
        RecoveryPointSelection:
          $ref: '#/components/schemas/RecoveryPointSelection'
        Tags:
          type: object
          additionalProperties:
            type: string
          description: 'Optional tags to include. A tag is a key-value pair you can use to manage, filter, and search for your resources. Allowed characters include UTF-8 letters, numbers, spaces, and the following characters: + - = . _ : /.'
      required:
      - Title
      - Description
    RecoveryPointSelection:
      type: object
      properties:
        VaultNames:
          type: array
          items:
            type: string
          description: These are the names of the vaults in which the selected recovery points are contained.
        ResourceIdentifiers:
          type: array
          items:
            type: string
          description: These are the resources included in the resource selection (including type of resources and vaults).
        DateRange:
          $ref: '#/components/schemas/DateRange'
    ServiceUnavailableException:
      type: object
      properties:
        Code:
          type: string
        Message:
          type: string
        Type:
          type: string
        Context:
          type: string
    DateRange:
      type: object
      properties:
        FromDate:
          type: string
          format: date-time
          description: This value is the beginning date, inclusive. The date and time are in Unix format and Coordinated Universal Time (UTC), and it is accurate to milliseconds (milliseconds are optional).
        ToDate:
          type: string
          format: date-time
          description: This value is the end date, inclusive. The date and time are in Unix format and Coordinated Universal Time (UTC), and it is accurate to milliseconds (milliseconds are optional).
      required:
      - FromDate
      - ToDate
    InvalidParameterValueException:
      type: object
      properties:
        Code:
          type: string
        Message:
          type: string
        Type:
          type: string
        Context:
          type: string
    ListLegalHoldsInput:
      type: object
      properties:
        NextToken:
          type: string
          description: The next item following a partial list of returned resources. For example, if a request is made to return MaxResults number of resources, NextToken allows you to return more items in your list starting at the location pointed to by the next token.
        MaxResults:
          type: integer
          description: The maximum number of resource list items to be returned.
    LegalHold:
      type: object
      properties:
        Title:
          type: string
          description: The title of a legal hold.
        Status:
          type: string
          enum:
          - CREATING
          - ACTIVE
          - CANCELING
          - CANCELED
          description: The status of the legal hold.
        Description:
          type: string
          description: The description of a legal hold.
        LegalHoldId:
          type: string
          description: The ID of the legal hold.
        LegalHoldArn:
          type: string
          description: The Amazon Resource Name (ARN) of the legal hold; for example, arn:aws:backup:us-east-1:123456789012:recovery-point:1EB3B5E7-9EB0-435A-A80B-108B488B0D45.
        CreationDate:
          type: string
          format: date-time
          description: The time when the legal hold was created.
        CancellationDate:
          type: string
          format: date-time
          description: The time when the legal hold was cancelled.
    CreateLegalHoldOutput:
      type: object
      properties:
        Title:
          type: string
          description: The title of the legal hold.
        Status:
          type: string
          enum:
          - CREATING
          - ACTIVE
          - CANCELING
          - CANCELED
          description: The status of the legal hold.
        Description:
          type: string
          description: The description of the legal hold.
        LegalHoldId:
          type: string
          description: The ID of the legal hold.
        LegalHoldArn:
          type: string
          description: The Amazon Resource Name (ARN) of the legal hold.
        CreationDate:
          type: string
          format: date-time
          description: The time when the legal hold was created.
        RecoveryPointSelection:
          $ref: '#/components/schemas/RecoveryPointSelection'
    CancelLegalHoldOutput:
      type: object
      properties: {}
    GetLegalHoldOutput:
      type: object
      properties:
        Title:
          type: string
          description: The title of the legal hold.
        Status:
          type: string
          enum:
          - CREATING
          - ACTIVE
          - CANCELING
          - CANCELED
          description: The status of the legal hold.
        Description:
          type: string
          description: The description of the legal hold.
        CancelDescription:
          type: string
          description: The reason for removing the legal hold.
        LegalHoldId:
          type: string
          description: The ID of the legal hold.
        LegalHoldArn:
          type: string
          description: The framework ARN for the specified legal hold. The format of the ARN depends on the resource type.
        CreationDate:
          type: string
          format: date-time
          description: The time when the legal hold was created.
        CancellationDate:
          type: string
          format: date-time
          description: The time when the legal hold was cancelled.
        RetainRecordUntil:
          type: string
          format: date-time
          description: The date and time until which the legal hold record is retained.
        RecoveryPointSelection:
          $ref: '#/components/schemas/RecoveryPointSelection'
    CancelLegalHoldInput:
      type: object
      properties:
        LegalHoldId:
          type: string
          description: The ID of the legal hold.
        CancelDescription:
          type: string
          description: A string the describes the reason for removing the legal hold.
        RetainRecordInDays:
          type: integer
          description: The integer amount, in days, after which to remove legal hold.
      required:
      - LegalHoldId
      - CancelDescription
    ListLegalHoldsOutput:
      type: object
      properties:
        NextToken:
          type: string
          description: The next item following a partial list of returned resources. For example, if a request is made to return MaxResults number of resources, NextToken allows you to return more items in your list starting at the location pointed to by the next token.
        LegalHolds:
          type: array
          items:
            $ref: '#/components/schemas/LegalHold'
          description: This is an array of returned legal holds, both active and previous.
    GetLegalHoldInput:
      type: object
      properties:
        LegalHoldId:
          type: string
          description: The ID of the legal hold.
      required:
      - LegalHoldId
  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)