Skip to content

Listar Campos adicionales de contacto

GET /api/v1/contact-fields

Este endpoint permite obtener un listado paginado de todos los campos adicionales de contacto que han sido configurados en su equipo.

Es útil para construir dinámicamente formularios de contacto, asegurando que se soliciten todos los datos personalizados definidos en la plataforma. La respuesta incluye detalles como el tipo de campo, reglas de validación y opciones disponibles.

ℹ Recuerda que:

La URL base para todas las solicitudes es: https://tu-dominio.c3.pe

Importante: reemplaza tu-dominio por el nombre de dominio específico que te haya proporcionado C3.

Solicitud

Cabeceras

EncabezadoTipoObligatorioDescripción
AuthorizationString✅ SíToken de autenticación (Bearer Token).

Parámetros de consulta

ParámetroTipoObligatorioDescripción
searchString❌ NoTérmino de búsqueda para filtrar campos por el nombre name. Debe contener entre 3 y 255 caracteres.
pageInteger❌ NoNúmero de la página que se desea obtener. Por defecto es 1.
per_pageInteger❌ NoCantidad de resultados por página. El valor por defecto es 15 y el rango es de 1 a 20

Ejemplo de solicitud

http
GET /api/v1/contact-fields?page=1&per_page=10

Respuesta

La API devuelve un objeto JSON con la siguiente estructura.

Respuesta base 200

json
{
	"message": "Campos adicionales de contacto obtenidos correctamente",
	"data": [
		{
			"id": 2,
			"name": "Canal preferido de contacto",
			"type": "select",
			"options": "Teléfono, WhatsApp, Email"
		},
		{
			"id": 20,
			"name": "Cargo laboral",
			"type": "text",
			"options": ""
		},
		{
			"id": 21,
			"name": "Ingreso mensual aproximado",
			"type": "number",
			"options": ""
		},
		{
			"id": 22,
			"name": "Comentarios adicionales",
			"type": "textarea",
			"options": ""
		},
		{
			"id": 23,
			"name": "Nivel de interés",
			"type": "radio",
			"options": "Alto, Medio, Bajo"
		},
		{
			"id": 24,
			"name": "Servicios de interés",
			"type": "checkbox",
			"options": "Ventas, Soporte, Encuestas, Cobranza"
		},
		{
			"id": 25,
			"name": "Género",
			"type": "select",
			"options": "M, F, Otro"
		},
		{
			"id": 26,
			"name": "Fecha de aceptación de términos",
			"type": "date",
			"options": ""
		}
	],
	"pagination": {
		"total_items": 8,
		"items_per_page": 10,
		"current_page": 1,
		"total_pages": 1
	}
}

Definición de atributos

CampoTipoDescripción
messageStringMensaje de respuesta del servidor.
dataArrayLista de campos adicionales obtenidos.
data.idIntegerIdentificador único del campo adicional.
data.nameStringNombre del campo.
data.typeStringTipo de campo (ej. text, select, date, checkbox).
data.optionsStringUn único string con las opciones separadas por coma para campos de tipo select, radio o checkbox. Si no hay opciones, es un string vacío.
paginationObjectInformación de la paginación.
pagination.total_itemsIntegerTotal de elementos encontrados.
pagination.items_per_pageIntegerElementos por página.
pagination.current_pageIntegerPágina actual.
pagination.total_pagesIntegerTotal de páginas.

Errores generales

Código HTTPTipoCausa común
401UnauthorizedEl token de acceso no fue proporcionado en el encabezado Authorization, es inválido o ha sido revocado. Verifique que el token sea correcto y esté activo.
422Unprocessable EntityLa solicitud fue entendida, pero contiene errores semánticos que impiden su procesamiento. Esto puede deberse a:
1. Parámetros faltantes o inválidos (ej, from_date no es una fecha válida);
2. Recurso inexistente (wa_number no registrado en el sistema);
3. Violación de reglas de negocio (el rango de fechas excede el límite permitido).
500Server ErrorError interno del servidor. Intenta nuevamente más tarde o contacta soporte técnico.