---
title: "Create backup action for key shares using API token authentication"
method: POST
path: "/environments/{environmentId}/waas/{walletId}/keyShares/backup/locations"
tags: ["Waas"]
---

# Create backup action for key shares using API token authentication

`POST /environments/{environmentId}/waas/{walletId}/keyShares/backup/locations`

Creates backup locations for wallet key shares. Requires API token authentication. Validates that the user belongs to the environment and that no client key shares exist for the wallet. This endpoint is intended for server-side integrations that need to backup key shares on behalf of users.

## Path parameters

- `environmentId` string, required
- `walletId` string, required

## Request body

- BackupKeySharesToLocationsWithUserIdRequest
  - `userId` string, uuid, required — The ID of the user who owns the wallet
  - `locations` object[], required
    - `location` 'googleDrive' | 'iCloud' | 'dynamic' | 'external' | 'delegated', required
    - `keygenId` string
    - `thresholdSignatureScheme` 'TWO_OF_TWO' | 'TWO_OF_THREE' | 'THREE_OF_FIVE'
    - `externalKeyShareId` string

## Response `201`

Backup action and event created successfully

- BackupKeySharesToLocationsResponse
  - `message` string, required
  - `walletId` string, required
  - `locationsWithKeyShares` object[], required
    - `location` 'googleDrive' | 'iCloud' | 'dynamic' | 'external' | 'delegated', required
    - `keyShareId` string, required
    - `externalKeyShareId` string, required

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not Found
- `500` — Internal Server Error

---

[API](https://skmtc.net/dynamic/apis/dashboard-api.md) · [All operations](https://skmtc.net/dynamic/apis/dashboard-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/dynamic/dashboard-api/revisions/aac826315d90/schema)
