← Catálogo
IMSS2 tokensPOST

Empleo actual

Consulta el empleo vigente registrado en el IMSS a partir de la CURP y el NSS del asegurado. Devuelve los datos de la persona y, si tiene empleo activo, la información laboral: razón social del patrón, registro patronal, salario base de cotización, entidad y modalidad. Es una consulta asíncrona.

Endpoint

POSThttps://api.datosnonstop.com/v1/imss/empleo-actual

Parámetros

json
{
  "curp": "FOGA770824HTSLRM03",
  "nss": "09997720918"
}
ParámetroTipoRequeridoDescripción
curpstringCURP de 18 caracteres del asegurado a consultar.
nssstringNúmero de Seguridad Social (NSS) de 11 dígitos del asegurado.

Ejemplo rápido

Coloca tu API key en el header x-api-key y agrega el header Content-Type: application/json para enviar el body como JSON.

curl
curl -X POST https://api.datosnonstop.com/v1/imss/empleo-actual \
  -H "x-api-key: tu_api_key" \
  -H "Content-Type: application/json" \
  -d '{"curp":"FOGA770824HTSLRM03","nss":"09997720918"}'

Tip

¿Sabías que al pegar un cURL en Postman te crea automáticamente la llamada con todos los elementos?

Token

Cada consulta consume tokens. Lo que no uses, lo conservas — tu saldo se acumula sin fecha de vencimiento ni reinicios. Puedes consultarlo en cualquier momento desde el dashboard o directamente en el header de cada respuesta x-tokens-remaining.

Consulta asíncrona

Esta consulta es asíncrona: el POST no devuelve el resultado de inmediato, sino un acuse 202 Accepted con un id y status: "pending". El resultado final llega después; puedes obtenerlo de dos formas.

Respuesta inicial (202)

JSON
202 Accepted
{
  "id": "64821d23824123766beac2be",
  "status": "pending",
  "curp": "ROPG750823MGRDZL09",
  "nss": "12345678901"
}

Opción 1 — Consultar por id (polling)

GEThttps://api.datosnonstop.com/v1/imss/empleo-actual/{id}

Consulta este endpoint con el id que te devolvió el POST. Mientras el resultado no está listo responde status: "pending"; cuando termina, devuelve el resultado final (ver Respuesta).

Opción 2 — Callback

Envía el header x-callback-url en tu POST con la URL donde quieres recibir el resultado (opcionalmente x-callback-token para verificar el origen del aviso). Cuando el resultado esté listo, Datos Non Stop hará un POST a esa URL con el resultado final:

json
{
  "id": "64821d23824123766beac2be",
  "status": "found",
  "curp": "ROPG750823MGRDZL09",
  "nss": "12345678901",
  "nombre": "AMILCAR",
  "apellidoPaterno": "FLORES",
  "apellidoMaterno": "GARCIA",
  "sexo": "HOMBRE",
  "ultimoReporte": "2026-04-07",
  "estatus": "ACTIVE",
  "informacionLaboral": {
    "razonSocial": "SOLUCIONES BRTX2019 SA DE CV",
    "registroPatronal": "H4052941",
    "rfcPatron": "SBR190814KL3",
    "salarioBase": 1548.30,
    "dias": 22,
    "entidadFederativa": "JALISCO",
    "claveEntidad": "5",
    "modalidad": "12"
  }
}

Resultado final

JSON
200 OK
{
  "id": "64821d23824123766beac2be",
  "status": "found",
  "curp": "ROPG750823MGRDZL09",
  "nss": "12345678901",
  "nombre": "AMILCAR",
  "apellidoPaterno": "FLORES",
  "apellidoMaterno": "GARCIA",
  "sexo": "HOMBRE",
  "ultimoReporte": "2026-04-07",
  "estatus": "ACTIVE",
  "informacionLaboral": {
    "razonSocial": "SOLUCIONES BRTX2019 SA DE CV",
    "registroPatronal": "H4052941",
    "rfcPatron": "SBR190814KL3",
    "salarioBase": 1548.30,
    "dias": 22,
    "entidadFederativa": "JALISCO",
    "claveEntidad": "5",
    "modalidad": "12"
  }
}

Respuestas en error

JSON
400 Bad Request
[
  {
    "type": "format",
    "message": "El formato del campo es inválido",
    "field": "curp"
  },
  {
    "type": "required",
    "message": "El campo es requerido",
    "field": "nss"
  }
]

Campos

Campos de entrada

CampoTipoDescripción
curpstringCURP de 18 caracteres del asegurado.
nssstringNúmero de Seguridad Social de 11 dígitos del asegurado.

Campos de respuesta

CampoTipoDescripción
idstringIdentificador de la consulta. Úsalo para consultar el resultado por polling o para correlacionar el callback.
statusstringEstado de la consulta. Ver catálogo Status.
curpstringCURP consultada.
nssstringNSS consultado. Solo cuando status es found.
nombrestringNombre(s) del asegurado. Solo cuando status es found.
apellidoPaternostringApellido paterno del asegurado. Solo cuando status es found.
apellidoMaternostringApellido materno del asegurado. Solo cuando status es found.
sexostringSexo registrado en el IMSS. Solo cuando status es found.
ultimoReportestringFecha de emisión del último reporte del IMSS (YYYY-MM-DD). Solo cuando status es found.
estatusstringEstatus del empleo del asegurado. Ver catálogo Estatus de empleo.
informacionLaboralobjectDatos del empleo vigente. Solo está presente cuando estatus es ACTIVE.
informacionLaboral.razonSocialstringRazón social del patrón.
informacionLaboral.registroPatronalstringRegistro patronal del empleador ante el IMSS.
informacionLaboral.rfcPatronstringRFC del patrón.
informacionLaboral.salarioBasenumberSalario base de cotización diario.
informacionLaboral.diasnumberDías cotizados reportados en el periodo.
informacionLaboral.entidadFederativastringEntidad federativa del registro patronal.
informacionLaboral.claveEntidadstringClave de la entidad federativa.
informacionLaboral.modalidadstringModalidad de aseguramiento reportada por el IMSS.
messagestringDetalle del motivo cuando status es not_found. Solo en respuestas not_found.

Catálogos

Tablas de referencia para los valores de los campos enumerados en la sección anterior.

Status

Valores posibles del campo status.

ValorDescripción
pendingLa consulta se recibió y está en proceso. Vuelve a consultar por id o espera el callback.
foundSe localizó al asegurado. Revisa el campo estatus para saber si tiene empleo activo.
not_foundNo se localizó al asegurado con los datos enviados (p. ej. el CURP y el NSS no corresponden). La respuesta incluye el campo message.

Estatus de empleo

Valores posibles del campo estatus.

ValorDescripción
ACTIVEEl asegurado tiene un empleo vigente registrado. La respuesta incluye informacionLaboral.
INACTIVEEl asegurado no tiene empleo vigente registrado. No se incluye informacionLaboral.

Sandbox

Endpoint

POSThttps://sandbox.api.datosnonstop.com/v1/imss/empleo-actual

Para llamar al sandbox necesitas una API key de sandbox que puedes generar en el dashboard.

curl
curl -X POST https://sandbox.api.datosnonstop.com/v1/imss/empleo-actual \
  -H "x-api-key: tu_api_key_sandbox" \
  -H "Content-Type: application/json" \
  -d '{"curp":"FOGA770824HTSLRM03","nss":"09997720918"}'

Casos de prueba

Si envías un valor que no esté en la lista, el sandbox devuelve automáticamente una respuesta exitosa con la misma estructura que la de FOGA770824HTSLRM03.

CasoCampocurp
Caso exitoso — Con empleo (ACTIVE)curpFOGA770824HTSLRM03
Caso exitoso — Sin empleo (INACTIVE)curpXXXX000101HDFXXX01
Caso exitoso — No encontradocurpYYYY000101HDFYYY02
Sin tokenscurpZZZZ000101HDFZZZ03
Error internocurpZZZZ000101HDFZZZ04
Unavailable servicecurpZZZZ000101HDFZZZ05