Inicio rápido
Lo único que necesitas para empezar a usar Palenca es una cuenta de usuario y una API Key. Puedes obtenerlas aquí.
Tenemos 2 entornos: Sandbox y Producción. Para una referencia completa sobre todos las rutas de nuestra API da click aquí.
https://sandbox.palenca.com/v1
https://api.palenca.com/v1
1. Obtén tu API Key
Para poder realizar cualquier petición a la API, necesitarás identificarte usando tu API Key privada. Esta debe enviarse en los encabezados como x-api-key
.
- cURL
- JavaScript
- Python
--header 'x-api-key: private_api_key' \
--header 'Content-Type: application/json'
headers: {
'x-api-key': 'private_api_key',
'Content-Type': 'application/json'
}
headers = {
"x-api-key": "YOUR_PRIVATE_API_KEY",
"Content-Type": "application/json"
}
2. Crea tu primera conexión
En este paso crearemos un user
(que representa un trabajador) y un account
(que representa una conexión al IMSS) haciendo una solicitud POST al endpoint /users/accounts
. Esta solicitud debe incluir en el payload
el CURP del trabajador (parámetro identifier
) y la plataforma donde estableceremos la conexión (en este caso IMSS). No olvides incluir la clave privada en los encabezados.
- cURL
- JavaScript
- Python
curl --location --request POST 'https://sandbox.palenca.com/v1/users/accounts' \
--header 'x-api-key: YOUR_PRIVATE_API_KEY' \
--header 'Content-Type: application/json' \
--data-raw '{
"identifier": "WORKER_CURP",
"country": "mx",
"platform": "imss"
"widget_id": "YOUR_WIDGET_ID" // if empty, the default widget will be used
}'
const axios = require('axios');
const data = JSON.stringify({
"identifier": "WORKER_CURP", // Replace with the CURP you want to consult
"country": "mx",
"platform": "imss"
});
const config = {
method: 'POST',
url: 'https://sandbox.palenca.com/v1/users/accounts',
headers: {
'x-api-key': 'YOUR_PRIVATE_API_KEY',
'Content-Type': 'application/json'
},
data: data
};
(async () => {
try {
const { data: responseData } = await axios(config);
console.info(JSON.stringify(responseData));
} catch (error) {
console.error(error);
}
})();
import requests
import json
headers = {
"Content-Type" : "application/json",
"x-api-key" : "YOUR_PRIVATE_API_KEY"
}
payload = {
"identifier" : "WORKER_CURP", #aquí debe ir el CURP del cual quieres consultar la información
"platform" : "imss",
}
response = requests.post("https://sandbox.palenca.com/v1/users/accounts", headers = headers,
params=json.dumps(payload))
Si todo funcionó correctamente, deberás ver una respuesta como esta y el proceso para obtener los datos de empleo se ha iniciado:
{
"success": True,
"error": None,
"data": {
"user_id": "054d0a9d-38ec-40cb-a31c-09b483242e4a",
"country": "mx",
"platform": "imss",
"account_id": "472f02e8-6b24-43a7-b529-3f71d6ecc81c"
}
}
3. Obtén los datos de empleo
El proceso de obtener los datos de empleo del trabajador depende de cada plataforma. Una vez pasado este tiempo estamos listos para recuperar el historial laboral del trabajador. Para hacerlo, necesitamos realizar una solicitud GET a /accounts/{account_id}/employment
. Podrás ver una lista de las empresas en las que este usuario ha trabajado, sus entidades federales y salarios.
- cURL
- JavaScript
- Python
curl --location --request GET 'https://sandbox.palenca.com/v1/accounts/:account_id/employment' \
--header 'x-api-key: YOUR_PRIVATE_API_KEY' \
--header 'Content-Type: application/json'
const axios = require('axios');
const headers = {
"Content-Type": "application/json",
"x-api-key": "YOUR_PRIVATE_API_KEY"
}
const accountId = "account_id"; // Replace with the actual account_id from the previous step
const config = {
method: 'GET',
url: `https://sandbox.palenca.com/v1/accounts/${accountId}/employment`,
headers: headers
};
(async () => {
try {
const { data } = await axios(config);
console.info(JSON.stringify(data));
} catch (error) {
console.error(error);
}
})();
import requests
import json
headers = {
"Content-Type" : "application/json",
"x-api-key" : "YOUR_PRIVATE_API_KEY"
}
account_id = "account_id" #account_id del paso previo
response = requests.get(f"https://sandbox.palenca.com/v1/accounts/{account_id}/employment", headers = headers)
4. Integra un Webhook
Para no depender del tiempo de respuesta de Palenca y tener que esperar que se encuentren listos los datos de empleo, te recomendamos implementar un Webhook que te permitirá recibir una notificación una vez se encuentren disponibles los datos para consulta.