R2 Developers
R2 Connect API

Autenticación y permisos

Cómo se autentica cada solicitud y qué significa cada permiso que el dueño del negocio te concede.

Cómo se envía la llave#

Toda solicitud lleva la llave de acceso. Se acepta en dos formas equivalentes; usa la que le acomode a tu cliente HTTP:

bash
# Opción 1 — encabezado Authorization (recomendada)
curl -H "Authorization: Bearer r2k_a1b2c3d4..." "https://api.r2-os.com/api/connect/v1/account"

# Opción 2 — encabezado x-api-key
curl -H "x-api-key: r2k_a1b2c3d4..." "https://api.r2-os.com/api/connect/v1/account"

Todas las llaves empiezan con r2k_. Cada llave pertenece a un solo negocio: no necesitas —ni puedes— indicar de qué negocio pides datos. R2 lo determina a partir de la llave.

Permisos disponibles#

El dueño elige los permisos al crear la llave. Si intentas leer un recurso sin su permiso, la respuesta es 403 y nada más. Pide siempre el mínimo que tu integración necesite: es lo que genera confianza al momento de autorizar.

PermisoDa acceso aContiene
read:reservations/reservationsEstancias de hospedaje con fechas, huéspedes, cargos y saldo
read:orders/ordersTodas las transacciones, de cualquier giro
read:payments/paymentsCobros, método y proveedor
read:guests/guestsDirectorio de clientes con historial de consumo
read:items/itemsCatálogo con precios

El recurso /account no requiere permiso alguno: cualquier llave válida puede consultarlo, y su respuesta incluye la lista scopes con lo que esa llave sí puede leer. Úsalo al arrancar tu integración para ajustar lo que vas a pedir.

Vigencia y revocación#

Cuida la llave

Una llave da acceso a datos comerciales y personales de un negocio real. Guárdala en el gestor de secretos de tu servidor, nunca en un repositorio, en código del navegador ni en una aplicación móvil. Todas las solicitudes deben ir desde tu servidor.