Autenticación de la API
Acceso seguro a la API de CheckoutOS
Última actualización: 2025-01-16
La API de CheckoutOS usa claves de API para autenticar. Esta guía explica cómo generar claves, autenticar solicitudes y gestionar el acceso de forma segura.
Claves de API
Las claves autentican todas las solicitudes a la API de CheckoutOS. Cada clave pertenece a tu tienda y tiene permisos configurables.
Generar claves de API
Ir a configuración
Crear una clave
Nombrar la clave
Fijar permisos
Copiar la clave
Las claves solo se muestran una vez al crearlas. Guárdalas de forma segura. Si las pierdes, tendrás que generar una nueva.
Métodos de autenticación
Token Bearer, recomendado
Incluye la clave como token Bearer en la cabecera Authorization:
curl -X GET "https://api.chargezen.com/v1/checkoutos/upsells" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"Cabecera X-API-Key
También puedes usar la cabecera X-API-Key:
curl -X GET "https://api.chargezen.com/v1/checkoutos/upsells" \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json"Permisos de API
Puedes limitar las claves a permisos específicos:
{
"scopes": {
"read:upsells": "View upsell configurations",
"write:upsells": "Create and modify upsells",
"read:bundles": "View bundle configurations",
"write:bundles": "Create and modify bundles",
"read:analytics": "Access analytics data",
"read:orders": "View order data",
"write:orders": "Modify orders (edits)",
"read:settings": "View CheckoutOS settings",
"write:settings": "Modify settings",
"webhooks:manage": "Create and manage webhooks"
}
}Concede solo los permisos que necesite la integración. Una clave para paneles analíticos no debería poder modificar ventas adicionales.
Límites de solicitudes
Las solicitudes se limitan para asegurar un uso equitativo:
{
"rate_limits": {
"requests_per_minute": 120,
"requests_per_hour": 3600,
"burst_limit": 20
},
"headers": {
"X-RateLimit-Limit": "120",
"X-RateLimit-Remaining": "115",
"X-RateLimit-Reset": "1640000000"
}
}Si alcanzas el límite, recibirás una respuesta 429:
{
"error": {
"code": "rate_limited",
"message": "Rate limit exceeded. Retry after 45 seconds.",
"retry_after": 45
}
}Entornos
CheckoutOS ofrece entornos separados de desarrollo y producción:
{
"production": {
"base_url": "https://api.chargezen.com/v1",
"key_prefix": "live_"
},
"sandbox": {
"base_url": "https://sandbox.api.chargezen.com/v1",
"key_prefix": "test_"
}
}Usa el entorno de pruebas para desarrollar y probar. Sus datos están separados de producción y se pueden restablecer en cualquier momento.
SDK oficiales
Los SDK oficiales gestionan automáticamente la autenticación:
import { CheckoutOS } from '@chargezen/checkoutos-sdk';
const client = new CheckoutOS({
apiKey: process.env.CHARGEZEN_API_KEY,
environment: 'production'
});
const upsells = await client.upsells.list();from chargezen import CheckoutOS
client = CheckoutOS(
api_key=os.environ['CHARGEZEN_API_KEY'],
environment='production'
)
upsells = client.upsells.list()Gestionar claves
Buenas prácticas
- Usa variables de entorno — Nunca escribas las claves directamente en el código
- Rota las claves regularmente — Al menos cada trimestre
- Usa claves distintas por entorno — Desarrollo, preproducción y producción
- Revoca claves sin uso — Elimina las que ya no necesitas
- Supervisa el uso — Busca patrones anómalos
- Usa ámbitos mínimos — Concede solo los permisos necesarios
Revocar claves
Ir a configuración de la API
Encontrar la clave
Revocar
La revocación es inmediata. Cualquier solicitud con esa clave fallará. Actualiza tus aplicaciones antes de revocarla.
Referencia de la API
¿Necesitas más ayuda? Contactar con soporte