---
title: "Actualiza una definición de campo de contacto (label / options)"
method: PATCH
path: "/variables/field-definitions/{id}"
tags: ["Variables"]
---

# Actualiza una definición de campo de contacto (label / options)

`PATCH /variables/field-definitions/{id}`

## Request

- Base URL: `https://api.met.meteor.com.co/api/v1`
- URL: `https://api.met.meteor.com.co/api/v1/variables/field-definitions/{id}`
- Auth: one of:
  - `bearer` (a scheme the document does not define)
  - HTTP bearer

Cambia la etiqueta visible o las opciones del campo. No reescribe los valores que ya tienen los contactos: quitar una opción de una lista no limpia a quienes la tenían.

## Path parameters

- `id` number, required

## Request body

- UpdateFieldDefinitionDto
  - `description` string
  - `label` string
  - `option_parents` object: `{ opción: opción del padre }`. Una opción sin entrada se ofrece siempre.
  - `options` string[]
  - `parent_field_key` string, nullable: Campo de lista del que depende este. `null` lo vuelve independiente.

## Response `200`

- object: Sobre en el que viaja toda respuesta correcta de la API. El recurso está en `data`. Los SDKs oficiales lo desenvuelven por ti; un cliente hecho a mano tiene que leer `.data`.
  - `success` true, required: Siempre `true` en una respuesta 2xx.
  - `data` ContactFieldDefinitionDto, required
    - `created_at` string, required
    - `description` string, nullable, required
    - `field_key` string, required: Clave del campo: se usa en las plantillas como `$contact.<field_key>`.
    - `id` number, required
    - `label` string, required: Nombre visible del campo en la interfaz.
    - `option_parents` object, required: Con `parent_field_key`: opción del padre a la que pertenece cada opción (`{ opción: opción del padre }`). Una opción sin entrada se ofrece siempre.
    - `options` string[], required: Config extra del tipo: para `select`, los valores permitidos; para `currency`, el código ISO de la moneda (un solo elemento). Vacío para los demás tipos.
    - `parent_field_key` string, nullable, required: Lista dependiente: `field_key` del campo de lista del que depende este, o `null` si es independiente.
    - `type` 'text' | 'number' | 'boolean' | 'date' | 'datetime' | 'json' | 'select' | 'currency', required
    - `workspace_id` number, required

## Other responses

- `400`: La request no es válida: un campo no pasa validación, falta un parámetro requerido o el recurso no admite la transición solicitada.
- `401`: API key ausente, inválida, revocada o expirada — o el workspace está bloqueado.
- `403`: La key está autenticada pero no puede ejecutar esta operación: scope faltante, capacidad deshabilitada, modo test restringido o recurso fuera de su cartera.
- `404`: El recurso no existe o no está disponible dentro del alcance de la key. No revela la existencia de recursos de otros tenants.
- `409`: La operación entra en conflicto con el estado actual o con un Idempotency-Key en uso. No reintentes con el mismo key y un body distinto.
- `429`: Se superó el límite por minuto de la key o la cuota del plan. Respeta `Retry-After`; el SDK ya reintenta solo.
- `500`: Error del servidor o del Met que ejecutaba. El SDK reintenta los 5xx con backoff.

---

[API](https://skmtc.dev/meteor/apis/met-public-api.md) · [All operations](https://skmtc.dev/meteor/apis/met-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/meteor/apis/met-public-api/revisions/fc6d3aad75de?raw)
