BETA

Valida si la cuenta puede usar el chat con IA en este momento: si el plan está activo y si tiene tokens disponibles en el período de facturación actual. Pensado para chequear el estado antes de invocar POST /chat o POST /chat/stream, por ejemplo para deshabilitar el input del chat en tu UI cuando allowed es false.

Esta consulta no consume tokens de IA.

Información del recurso
AutenticaciónRequerida (Token de API, Bearer)
Scopemapaprop-chat-ai
HTTP MethodGET
ResponseJSON
Version1

URL del recurso

https://mapaprop.app/api/action/mapaprop-chat-ai-v1/validate

Parámetros

Sin parámetros. El customerId se deriva del token de autenticación.

Código de ejemplo

GET /api/action/mapaprop-chat-ai-v1/validate HTTP/1.1
Host: mapaprop.app
Authorization: Bearer {access_token}

Respuesta

ObjetoCampoTipoRequeridoDescripción
Responseallowedbooleantrue si en este momento se puede mandar un mensaje al chat (plan activo y tokens disponibles).
enabledbooleantrue si el cliente tiene el chat con IA activo/contratado, independientemente de si le quedan tokens.
tokensUsedintTokens consumidos en el período de facturación actual.
tokenLimitintTope de tokens del período actual.
tokensRemainingintTokens disponibles restantes (nunca negativo).
resetDatestring o nullnoFecha en la que se reinicia el contador de tokens del período. null si no aplica.
messagestringnoSolo presente cuando no hay una suscripción de IA activa en la cuenta (enabled: false).

Si el cliente tiene configurada su propia API key de IA ("Bring Your Own Key" / BYO) y esa configuración está activa, allowed puede ser true aunque tokensRemaining sea 0 — en ese caso el consumo no sale del pool de tokens de Mapaprop.

Ejemplo de respuesta

{
    "allowed": true,
    "enabled": true,
    "tokensUsed": 12450,
    "tokenLimit": 100000,
    "tokensRemaining": 87550,
    "resetDate": "2026-09-01"
}

Ejemplo cuando no hay una suscripción de IA activa:

{
    "allowed": false,
    "enabled": false,
    "tokensUsed": 0,
    "tokenLimit": 0,
    "tokensRemaining": 0,
    "resetDate": null,
    "message": "No active AI subscription"
}