Eon

Eon vaults API

Manage backup vaults that store snapshots.

Operations 4

POST /v1/projects/{projectId}/vaults Create Vault #
GET /v1/projects/{projectId}/vaults/{vaultId} Get Vault #
PATCH /v1/projects/{projectId}/vaults/{vaultId} Update Vault #
POST /v1/projects/{projectId}/vaults/list List Vaults #

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/eon-vaults-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

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

OpenAPI Specification

eon-vaults-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: The Eon.io REST API
  title: Eon accounts Vaults API
  version: 1.0.0
servers:
- url: /
security:
- ApiKeyAuth: []
tags:
- description: Manage backup vaults that store snapshots.
  name: vaults
  x-displayName: Vaults
paths:
  /v1/projects/{projectId}/vaults:
    post:
      description: 'Description: Creates a vault in the specified project.


        By default, vaults are encrypted using an Eon-managed KMS key.

        However, if your requirements mandate control over encryption keys, you can use a customer-managed KMS key.

        For more information, see [About Self-Managed Vault Keys].


        <Error>

        If you use self-managed vault keys, you assume responsibility for securing them from unauthorized access and deletion.

        </Error>


        [About Self-Managed Vault Keys]: /user-guide/backing-up/vaults/about-self-managed-vault-keys

        '
      operationId: createVault
      parameters:
      - description: 'ID of the project the vault is created in.

          You can get your project ID from the [API Credentials](https://console.eon.io/global-management/api-credentials) page in your global management console.

          '
        example: 1ee34dc5-0a7c-4e56-a820-917371e05c8d
        explode: false
        in: path
        name: projectId
        required: true
        schema:
          format: uuid
          type: string
        style: simple
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateVaultRequest'
        required: true
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateVaultResponse'
          description: Vault created.
        '409':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/createVault_409_response'
          description: A vault with the same encryption key already exists in the specified region.
        1XX:
          description: Informational
        3XX:
          description: Redirect
        4XX:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
          description: Client Error
        5XX:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
          description: Internal Server Error
      summary: Create Vault
      tags:
      - vaults
      x-internal: false
      x-data-access:
        excluded: true
      x-permissions:
      - create:vaults
      x-audit-log:
        action: create
        entityRefs:
        - entityType: vault
          in: resBody
          key: vault.id
  /v1/projects/{projectId}/vaults/{vaultId}:
    get:
      description: 'Description: Retrieves a vault.'
      operationId: getVault
      parameters:
      - description: 'ID of the project the vault is in.

          You can get your project ID from the [API Credentials](https://console.eon.io/global-management/api-credentials) page in your global management console.

          '
        example: 1ee34dc5-0a7c-4e56-a820-917371e05c8d
        explode: false
        in: path
        name: projectId
        required: true
        schema:
          format: uuid
          type: string
        style: simple
      - description: ID of the vault to retrieve.
        example: 36388572-9c69-5309-b362-04e7d85ae503
        explode: false
        in: path
        name: vaultId
        required: true
        schema:
          format: uuid
          type: string
        style: simple
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetVaultResponse'
          description: Vault retrieved.
        '404':
          description: Project or vault wasn't found.
        1XX:
          description: Informational
        3XX:
          description: Redirect
        4XX:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
          description: Client Error
        5XX:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
          description: Internal Server Error
      summary: Get Vault
      tags:
      - vaults
      x-internal: false
      x-data-access:
        excluded: true
      x-permissions:
      - read:vaults
      x-audit-log:
        excluded: true
    patch:
      description: 'Description: Updates a vault''s display name.'
      operationId: updateVault
      parameters:
      - description: 'ID of the project the vault is in.

          You can get your project ID from the [API Credentials](https://console.eon.io/global-management/api-credentials) page in your global management console.

          '
        example: 1ee34dc5-0a7c-4e56-a820-917371e05c8d
        explode: false
        in: path
        name: projectId
        required: true
        schema:
          format: uuid
          type: string
        style: simple
      - description: ID of the vault to update.
        example: 36388572-9c69-5309-b362-04e7d85ae503
        explode: false
        in: path
        name: vaultId
        required: true
        schema:
          format: uuid
          type: string
        style: simple
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateVaultRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateVaultResponse'
          description: Vault is updated.
        '404':
          description: Project or vault wasn't found.
        1XX:
          description: Informational
        3XX:
          description: Redirect
        4XX:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
          description: Client Error
        5XX:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
          description: Internal Server Error
      summary: Update Vault
      tags:
      - vaults
      x-internal: false
      x-data-access:
        excluded: true
      x-permissions:
      - update:vaults
      x-audit-log:
        action: update
        entityRefs:
        - entityType: vault
          in: path
          key: vaultId
  /v1/projects/{projectId}/vaults/list:
    post:
      description: 'Description: Retrieves a list of vaults in the specified project.'
      operationId: listVaults
      parameters:
      - description: 'ID of the project whose vaults you want to retrieve.

          You can get your project ID from the [API Credentials](https://console.eon.io/global-management/api-credentials) page in your global management console.

          '
        example: 1ee34dc5-0a7c-4e56-a820-917371e05c8d
        explode: false
        in: path
        name: projectId
        required: true
        schema:
          format: uuid
          type: string
        style: simple
      - allowEmptyValue: true
        description: 'Cursor that points to the first record of the next page of results.

          Get this value from the previous response.

          To preserve the results in the same order, use the same sorting and filters in the first request as all subsequent requests.

          '
        example: Yjk3ODZjNjktZTIwZC00NjAxLWE1MzktZjg2NGExM2IxYTZlfDE=
        explode: true
        in: query
        name: pageToken
        required: false
        schema:
          format: tobedefined
          type: string
        style: form
      - description: Maximum number of items to return in the response.
        example: 10
        explode: true
        in: query
        name: pageSize
        required: false
        schema:
          minimum: 1
          type: integer
        style: form
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListBackupVaultResponse'
          description: Vaults retrieved.
        1XX:
          description: Informational
        3XX:
          description: Redirect
        4XX:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
          description: Client Error
        5XX:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
          description: Internal Server Error
      summary: List Vaults
      tags:
      - vaults
      x-mcp: true
      x-internal: false
      x-data-access:
        excluded: true
      x-permissions:
      - read:vaults
      x-audit-log:
        excluded: true
components:
  schemas:
    VaultProviderAttributes:
      description: 'Cloud-provider-specific vault attributes.

        '
      example:
        cloudProvider: AWS
        aws:
          encryptionKey: arn:aws:kms:us-east-1:123456789012:key/4692190d-ae52-56fe-9937-6aa2c4e3df62
      properties:
        cloudProvider:
          $ref: '#/components/schemas/Provider'
        aws:
          $ref: '#/components/schemas/AwsVaultConfig'
      required:
      - cloudProvider
      type: object
    BackupVault:
      example:
        providerAccountId: '123412341234'
        name: AWS US East 1
        vaultAccountId: 1ee34dc5-0a7c-4e56-a820-917371e05c8d
        vaultAttributes:
          cloudProvider: AWS
          aws:
            encryptionKey: arn:aws:kms:us-east-1:123456789012:key/4692190d-ae52-56fe-9937-6aa2c4e3df62
        id: 37732835-d768-5990-ba93-a7c2d2e6d754
        isManagedByEon: true
        region: us-east-1
      properties:
        id:
          description: Vault ID.
          example: 37732835-d768-5990-ba93-a7c2d2e6d754
          type: string
        vaultAccountId:
          description: Eon-assigned ID of the vault account.
          example: 1ee34dc5-0a7c-4e56-a820-917371e05c8d
          type: string
        providerAccountId:
          description: Cloud provider-assigned ID of the vault account.
          example: '123412341234'
          type: string
        name:
          description: Vault display name.
          example: AWS US East 1
          type: string
        region:
          description: Region where the vault is located.
          example: us-east-1
          type: string
        isManagedByEon:
          description: Whether the vault is in an Eon-managed vault account.
          example: true
          type: boolean
        vaultAttributes:
          $ref: '#/components/schemas/VaultProviderAttributes'
      required:
      - id
      - isManagedByEon
      - name
      - providerAccountId
      - region
      - vaultAccountId
      - vaultAttributes
      type: object
    Error:
      example:
        error: error
      properties:
        error:
          type: string
      type: object
    createVault_409_response:
      example:
        error: error
      properties:
        error:
          type: string
      type: object
    CreateVaultRequest:
      example:
        name: EU central
        vaultAttributes:
          cloudProvider: AWS
          aws:
            encryptionKey: arn:aws:kms:us-east-1:123456789012:key/4692190d-ae52-56fe-9937-6aa2c4e3df62
        region: eu-central-1
      properties:
        name:
          description: Vault display name.
          example: EU central
          type: string
        region:
          description: Region where the vault is hosted.
          example: eu-central-1
          type: string
        vaultAttributes:
          $ref: '#/components/schemas/VaultProviderAttributesInput'
      required:
      - name
      - region
      - vaultAttributes
      type: object
    AwsVaultConfig:
      description: 'AWS-specific vault configuration.

        '
      example:
        encryptionKey: arn:aws:kms:us-east-1:123456789012:key/4692190d-ae52-56fe-9937-6aa2c4e3df62
      properties:
        encryptionKey:
          description: 'ARN of the KMS key used for encryption.

            Omitted if the key is managed by Eon.

            '
          example: arn:aws:kms:us-east-1:123456789012:key/4692190d-ae52-56fe-9937-6aa2c4e3df62
          type: string
      type:
      - object
      - 'null'
    AwsVaultConfigInput:
      description: 'AWS-specific vault configuration.

        '
      example:
        encryptionKey: arn:aws:kms:us-east-1:123456789012:key/4692190d-ae52-56fe-9937-6aa2c4e3df62
      properties:
        encryptionKey:
          description: 'ARN of the KMS key used for encryption.

            Omitted if the key is managed by Eon.

            '
          example: arn:aws:kms:us-east-1:123456789012:key/4692190d-ae52-56fe-9937-6aa2c4e3df62
          type: string
      type:
      - object
      - 'null'
    VaultProviderAttributesInput:
      description: 'Cloud-provider-specific vault attributes.

        '
      example:
        cloudProvider: AWS
        aws:
          encryptionKey: arn:aws:kms:us-east-1:123456789012:key/4692190d-ae52-56fe-9937-6aa2c4e3df62
      properties:
        cloudProvider:
          $ref: '#/components/schemas/Provider'
        aws:
          $ref: '#/components/schemas/AwsVaultConfigInput'
      required:
      - cloudProvider
      type: object
    CreateVaultResponse:
      example:
        vault:
          providerAccountId: '123412341234'
          name: AWS US East 1
          vaultAccountId: 1ee34dc5-0a7c-4e56-a820-917371e05c8d
          vaultAttributes:
            cloudProvider: AWS
            aws:
              encryptionKey: arn:aws:kms:us-east-1:123456789012:key/4692190d-ae52-56fe-9937-6aa2c4e3df62
          id: 37732835-d768-5990-ba93-a7c2d2e6d754
          isManagedByEon: true
          region: us-east-1
      properties:
        vault:
          $ref: '#/components/schemas/BackupVault'
      required:
      - vault
      type: object
    ListBackupVaultResponse:
      example:
        nextToken: Y2NiMGYyZmMtYjYyZi00OTc5LTgzNjQtYmQ2YjEyYzdjZTNifDE=
        vaults:
        - providerAccountId: '123412341234'
          name: AWS US East 1
          vaultAccountId: 1ee34dc5-0a7c-4e56-a820-917371e05c8d
          vaultAttributes:
            cloudProvider: AWS
            aws:
              encryptionKey: arn:aws:kms:us-east-1:123456789012:key/4692190d-ae52-56fe-9937-6aa2c4e3df62
          id: 37732835-d768-5990-ba93-a7c2d2e6d754
          isManagedByEon: true
          region: us-east-1
        - providerAccountId: '123412341234'
          name: AWS US East 1
          vaultAccountId: 1ee34dc5-0a7c-4e56-a820-917371e05c8d
          vaultAttributes:
            cloudProvider: AWS
            aws:
              encryptionKey: arn:aws:kms:us-east-1:123456789012:key/4692190d-ae52-56fe-9937-6aa2c4e3df62
          id: 37732835-d768-5990-ba93-a7c2d2e6d754
          isManagedByEon: true
          region: us-east-1
        totalCount: 188
      properties:
        vaults:
          items:
            $ref: '#/components/schemas/BackupVault'
          type: array
        nextToken:
          description: 'Cursor that points to the first record of the next page of results.

            Pass this value in the next request.

            '
          example: Y2NiMGYyZmMtYjYyZi00OTc5LTgzNjQtYmQ2YjEyYzdjZTNifDE=
          type: string
        totalCount:
          description: Total number of restore jobs that matched the filter options.
          example: 188
          type: integer
      required:
      - totalCount
      - vaults
      type: object
    UpdateVaultRequest:
      example:
        name: My new vault name
      properties:
        name:
          description: Vault display name.
          example: My new vault name
          type: string
      required:
      - name
      type: object
    GetVaultResponse:
      example:
        vault:
          providerAccountId: '123412341234'
          name: AWS US East 1
          vaultAccountId: 1ee34dc5-0a7c-4e56-a820-917371e05c8d
          vaultAttributes:
            cloudProvider: AWS
            aws:
              encryptionKey: arn:aws:kms:us-east-1:123456789012:key/4692190d-ae52-56fe-9937-6aa2c4e3df62
          id: 37732835-d768-5990-ba93-a7c2d2e6d754
          isManagedByEon: true
          region: us-east-1
      properties:
        vault:
          $ref: '#/components/schemas/BackupVault'
      required:
      - vault
      type: object
    UpdateVaultResponse:
      example:
        vault:
          providerAccountId: '123412341234'
          name: AWS US East 1
          vaultAccountId: 1ee34dc5-0a7c-4e56-a820-917371e05c8d
          vaultAttributes:
            cloudProvider: AWS
            aws:
              encryptionKey: arn:aws:kms:us-east-1:123456789012:key/4692190d-ae52-56fe-9937-6aa2c4e3df62
          id: 37732835-d768-5990-ba93-a7c2d2e6d754
          isManagedByEon: true
          region: us-east-1
      properties:
        vault:
          $ref: '#/components/schemas/BackupVault'
      required:
      - vault
      type: object
    Provider:
      description: 'Cloud provider.

        `PROVIDER_UNSPECIFIED` is supported only in responses.

        '
      enum:
      - AWS
      - AZURE
      - GCP
      - MONGO_ATLAS
      - GOOGLE_WORKSPACE
      - MICROSOFT_365
      - PROVIDER_UNSPECIFIED
      example: AWS
      type: string
      x-docs-internal-enum:
      - GOOGLE_WORKSPACE
      - MICROSOFT_365
  securitySchemes:
    ApiKeyAuth:
      bearerFormat: JWT
      scheme: bearer
      type: http