---
title: "Remove Vault Item Field"
method: DELETE
path: "/agents/v2/vault/items/{itemId}/fields/{fieldKey}"
tags: ["Vault"]
deprecated: true
---

# Remove Vault Item Field

`DELETE /agents/v2/vault/items/{itemId}/fields/{fieldKey}`

## Request

- Base URL: `https://odyssey.asteroid.ai`
- URL: `https://odyssey.asteroid.ai/agents/v2/vault/items/{itemId}/fields/{fieldKey}`
- Auth: API key in header `X-Api-Key`

> **Deprecated.**

## Path parameters

- `itemId` string, uuid, required
- `fieldKey` string, required: UPPER_SNAKE field key, unique within a template or item.

## Response `200`

The request has succeeded.

- AgentsVaultVaultItem: A vault item. Secret values live in WorkOS and never appear here.
  - `actor` CommonActor: Who did something: a person, an API key or one of Asteroid's services. Absent on a record made before actors were stored, on one a system job made, and when the caller may not see who it was.
    - `client` 'web' | 'cli' | 'mcp' | 'astro' | 'sdk': The program a caller used
    - `id` string, required: The person's id, the key's id, or the service's name
    - `kind` 'person' | 'api_key' | 'service', required: The kind of caller that did something
  - `createdAt` string, date-time, required
  - `createdBy` string, uuid
  - `fields` AgentsVaultItemField[], required
    - `hint` string: Optional guidance shown next to the field, copied from catalog credentials when generating masters.
    - `key` string, required: UPPER_SNAKE field key, unique within a template or item.
    - `label` string, required: Human label shown in forms. The field key is UPPER_SNAKE of this label.
    - `legacyName` string: Original profile-credential name this field mirrors. Set when a profile credential is synced into vault; ##NAME## still resolves via this alias.
    - `readableValue` string: Present only for readable field types. Write-only types omit this.
    - `required` boolean, required
    - `type` 'username' | 'email' | 'url' | 'phone' | 'text' | 'password' | 'hidden' | 'totp_seed' | 'api_key' | 'card_number' | 'card_expiry' | 'card_cvv' | 'cardholder_name', required: Type of a vault field. Sensitivity is derived from the type: username, email, url, phone, text, card_expiry, and cardholder_name are readable; password, hidden, totp_seed, api_key, card_number, and card_cvv are write-only. There is no separate hidden flag.
    - `valueUpdatedAt` string, date-time, required
  - `id` string, uuid, required
  - `itemKey` string, required: UPPER_SNAKE vault item key. Derived from name when omitted on create. Unique among a profile's attached items, not across the organisation. Stays the same across renames.
  - `kind` 'login' | 'api_key' | 'card' | 'custom', required: Kind of vault item. Templates and items need at least one field. Completeness is per-field required.
  - `lastRotatedAt` string, date-time
  - `lastRotatedBy` string, uuid
  - `lastUsedAt` string, date-time
  - `name` string, required
  - `organizationId` string, uuid, required
  - `templateId` string, uuid
  - `updatedAt` string, date-time, required

## Other responses

- `400`: The server could not understand the request due to invalid syntax.
- `401`: Access is unauthorized.
- `403`: Access is forbidden.
- `404`: The server cannot find the requested resource.
- `409`: The request conflicts with the current state of the server.
- `500`: Server error

---

[API](https://skmtc.dev/asteroid/apis/agent-service.md) - [All operations](https://skmtc.dev/asteroid/apis/agent-service/llms.txt) - [OpenAPI document](https://skmtc.dev/asteroid/apis/agent-service/revisions/ccc134d1d510?raw)
