Creá una API key de sandbox desde el dashboard, la CLI o MCP, guardala en tu servidor y rotala de forma segura.
Una API key le da a tu servidor acceso a una organización de Commet. Empezá con una organización sandbox mientras desarrollás la integración.
Las keys nuevas de acceso completo empiezan con ck_sandbox_ o ck_live_; las restringidas, con rk_sandbox_ o rk_live_. Las keys anteriores que empiezan con ck_ siguen funcionando. La organización que creó la key determina a qué datos puede acceder. Ambos entornos usan https://commet.co/api/v1.
Elegí el camino que corresponda a tu forma de trabajar. Solo necesitás uno para empezar.
Desarrollo local, y elegí Expires In (Days). El dashboard acepta entre 1 y 365 días, con 365 por defecto.Instalá la CLI de Commet, iniciá sesión desde el navegador y vinculá el proyecto con tu organización sandbox:
npm install -g commet
commet login
commet linkElegí la organización marcada como sandbox. Al vincular una nueva organización, la CLI genera una key para sus comandos de recursos y la guarda en .commet/config.json. También agrega .commet/ a .gitignore. Mantené ese directorio privado.
Esto configura la CLI; no carga COMMET_API_KEY en tu aplicación. Para crear una key independiente para la app después de vincular el proyecto:
commet api-keys create --name "Desarrollo local" --expires-in-days 365Guardá el campo apiKey de la respuesta como se indica abajo. Los comandos de recursos priorizan COMMET_API_KEY del entorno sobre la key del proyecto vinculado: revisá qué credencial está activa antes de crear o eliminar keys.
Conectá tu agente al servidor MCP de Commet en https://commet.co/mcp/v2. Con OAuth podés iniciar sesión desde el navegador y elegir una organización sandbox sin tener una API key previa. La conexión queda vinculada a esa organización.
Pedile al agente que cree una key para la aplicación con api_create_api_key y estos argumentos:
{
"body": {
"name": "Desarrollo local",
"expiresInDays": 365
}
}La respuesta contiene el secreto completo una sola vez. Si tus herramientas lo permiten, pedile al agente que lo guarde directamente en el archivo local de secretos o secret manager elegido. No pegues una key existente en la conversación ni le pidas al agente que la repita en un mensaje.
¿Ya te autenticás con una API key de acceso completo? Podés crear reemplazos con POST /api/v1/api-keys. Ese request crea otra key para la misma organización. Consultá Create API key para ver el request y la respuesta.
Si omitís permissions, la key tiene acceso completo. Si indicás permisos por recurso, queda restringida. Por ejemplo, customer: ["read"] permite leer customers, pero no modificarlos. El acceso de escritura requiere tanto "read" como "write". Un objeto vacío ({}) no da acceso a ningún recurso.
Una key restringida con api_key: ["read", "write"] puede crear keys restringidas con los mismos permisos o menos. Esas keys vencen como máximo cuando vence la key que las crea. Las keys restringidas no pueden editar ni eliminar API keys.
const key = await commet.apiKeys.create({
name: "Lectura de customers",
permissions: { customer: ["read"] },
})El secreto completo se devuelve una sola vez. Guardalo en tu secret store antes de cerrar la respuesta.
Para desarrollo local, guardala en un archivo de entorno excluido de Git:
COMMET_API_KEY=ck_reemplaza_con_tu_keyCargá la variable en el proceso de tu servidor con el mecanismo de tu framework. En producción, usá el secret store del deploy. Nunca expongas la key en código del navegador, variables públicas, logs, screenshots ni control de versiones.
Commet guarda un hash de la key y no puede volver a mostrar el secreto completo. Si lo perdés, creá un reemplazo.
Para Node.js, instalá el SDK:
npm install @commet/nodeInicializalo en código del servidor después de cargar el entorno:
import { Commet } from "@commet/node"
const apiKey = process.env.COMMET_API_KEY
if (!apiKey) {
throw new Error("COMMET_API_KEY is required")
}
export const commet = new Commet({ apiKey })Para otros lenguajes, seguí la guía de Python, Go, Java o PHP. Los requests REST directos se autentican con el header x-api-key.
Usá una key independiente por aplicación o deploy que necesite su propia rotación. Para reemplazar una key antes de que venza:
Para producción, creá una key en tu organización live y guardala separada de las credenciales de sandbox. No copies IDs de customers, planes ni suscripciones de sandbox a la configuración live. Antes del cambio, verificá checkout, webhooks y una renovación en sandbox con el Test Clock.
Después, seguí el quickstart para completar el primer pago de una suscripción en sandbox.
¿Cómo está esta guía?