# 🏥 Servicio de solo validación de Vigencia de Derechos del IMSS

# Headers (requerido API Key)

{
    "x-api-key": "1a2b3c4d5e6f1a2b3c4d5e6f1a2b3c4d5e6f1a2b3c4d5e6f"
}

# Payload JSON de ejemplo (obligatorios)

// POST https://consultaunica.mx/api/v3/imss
{
    "type": "vd_validity",
    "vdSc": {
        "curp": "LOOA531113HTCPBN07",
        "nss": "12345678901"
    }
}

# Respuesta exitosa. HTTP 200

{
    "variant": "vd_validity",
    "message": "La vigencia de derechos fue validada",
    "vdValidity": {
        "hasIncludedRight": true,
        "hasMedicalInsuranceRight": true,
        "validUntilDate": null
    }
}

# ❌ Error de validación de datos. HTTP 409

La CURP tiene un formato inválido

{
    "message": "La consulta no es válida, favor de verificar los datos ingresados",
    "errors": [
        {
            "field": "body.vdSc.curp",
            "error": "String should match pattern '^[A-Z][AEIOUX][A-Z]{2}[0-9]{2}(0[1-9]|1[012])(0[1-9]|[12][0-9]|3[01])[MHX]([ABCMTZ]S|[BCJMOT]C|[CNPST]L|[GNQ]T|[GQS]R|C[MH]|[MY]N|[DH]G|NE|VZ|DF|SP)[BCDFGHJ-NP-TV-Z]{3}[0-9A-Z][0-9]$'"
        }
    ]
}

El NSS debe tener 11 dígitos

{
    "message": "La consulta no es válida, favor de verificar los datos ingresados",
    "errors": [
        {
            "field": "body.vdSc.nss",
            "error": "String should have at most 11 characters"
        }
    ]
}

El correo tiene un formato inválido

{
    "message": "La consulta no es válida, favor de verificar los datos ingresados",
    "errors": [
        {
            "field": "body.userEmail",
            "error": "value is not a valid email address: An email address must have an @-sign."
        }
    ]
}

# ❌ Error de datos reportados por el IMSS. HTTP 400

{
    "message": "No se encontró un registro asociado a la CURP ni al NSS proporcionado"
}

# ❌ Error desconocido. HTTP 500

{
    "message": "Algo falló durante la consulta, favor de consultar nuevamente"
}