---
title: "Validar existencia de campo personalizado"
method: POST
path: "/custom-fields/validate"
tags: ["Custom Fields"]
---

# Validar existencia de campo personalizado

`POST /custom-fields/validate`

## Request

- Base URL: `http://localhost:8081`
- URL: `http://localhost:8081/custom-fields/validate`
- Auth: HTTP bearer

Valida si un custom field existe y retorna su metadata.

**Uso**: Validación antes de construir segmento con custom field.

## Request body

- object
  - `property_name` string, required: Nombre del custom field a validar

## Response `200`

Campo validado exitosamente

- CustomFieldValidateResponse
  - `success` boolean, required
  - `field` object, required
    - `property_name` string, required
    - `data_type` 'TEXT' | 'NUMBER' | 'BOOLEAN' | 'DATE', required
    - `exists` boolean, required
    - `display_name` string, required

## Other responses

- `400`: Solicitud inválida
- `403`: Acceso denegado antes de ejecutar ninguna consulta. Dos casos: - **Rol no admitido** (`error.code: FORBIDDEN`): las rutas de datos solo admiten tokens con rol ADMIN, OWNER o SUPERADMIN (los `campaign_service_token` de nev-api llevan rol ADMIN). Un token de fan (USER), STAFF, EXTERNAL o sin rol recibe 403. - **Selección ajena** (`code: ACTIVE_TENANT_FORBIDDEN`): la organización seleccionada (`activeTenantId`) no pertenece a la jerarquía actual de `tenantId`.
- `404`: Campo no encontrado
- `500`: Error interno del servidor
- `503`: No se pudo leer la jerarquía de tenants (MongoDB no disponible). Reintentable; nunca se sustituye por un ámbito parcial o global.

---

[API](https://skmtc.dev/nevent/apis/nevent-data-api.md) · [All operations](https://skmtc.dev/nevent/apis/nevent-data-api/llms.txt) · [OpenAPI document](https://skmtc.dev/nevent/apis/nevent-data-api/revisions/81035d32c1c1?raw)
