Expire Wallet

The Expire Wallet endpoint allows you to expire a wallet within the Signchain Vault, effectively disabling it from performing further transactions until it is reactivated.

When expiring a wallet through the API, a TTL (Time-To-Live) of 30 calendar days is assigned. After this date the Vault schedules the private key and address record for deletion and the wallet becomes irrecoverable. You can reverse this operation during this time by calling unexpire.

Should sign operations arrive at Signchain for this wallet address during the expiration period, it will still be accessible. However after the expiration period elapses, and the private key data is deleted, sign operations will fail for this wallet address.

Endpoint

DELETE/api/v1/vaults/:vaultId/wallets/:address

Test Endpoint

Request Parameters

  • vaultId (path) - The unique identifier of the vault containing the wallet.
  • address (path) - The Ethereum address of the wallet to be expired.

Example Request

curl -X DELETE https://signchain.net/api/v1/vault/{vaultId}/wallets/{address} \
     -H "Authorization: Bearer <API_KEY>"

Example Response

{
  "success": Request_Success_Status,
  "data": {
    "id": "<Your-Wallet-ID>",
    "account": "<Your-Account-ID>",
    "vault": "<Your-Vault-ID>",
    "name": "<Your-Wallets-Name>",
    "address": "<Your-Unique-Wallet-Address>",
    "created": "<Current-Date-ISO>",
    "updated": "<Current-Date-ISO>",
    "expires": "<Wallet-Expiry-Date-ISO>"
  },
  "error": "<Error-Message>"
}

Response

The response includes the wallet object with the following fields:

  • success: A boolean true or false determining whether the expire request was successful or not. If the expire request was not successful, this value will be false and the error field will be populated.
  • error: A string error message, only sent if the success parameter is false.
  • id (string) - The unique identifier of the wallet within the vault.
  • account (string) - Your Signchain account ID.
  • vault (string) - Your vault's unique identifier.
  • name (string) - The descriptive name assigned to the wallet.
  • address (string) - The unique Ethereum address of the wallet.
  • created (string, ISO 8601 format) - The date and time when the wallet was created.
  • updated (string, ISO 8601 format) - The last updated date of the wallet, which will be when it was created.
  • expires (string, ISO 8601 format) - This field will be included and is the date the wallet is marked for expiry and deletion, which should be 30 days from the present time. Deletion will include all private key data associated with the wallet.

Expiring a wallet is a secure way to rotate signer wallets in your contract, preventing unauthorized use after the expiry without deleting the wallet. Deactivate the expiration and deletion timespan for the wallet with the Unexpire Wallet endpoint if needed.