- Al registrarla, declaras el máximo que tu app puede pedir.
- En la URL de conexión, pides los que necesitas, dentro de ese máximo (
scope). - En la pantalla de conexión, el propietario los acepta o quita algunos.
scope de cada
respuesta de /oauth/token: léelo siempre, y no supongas que tienes todo lo que pediste.
Lo que puede quitar el propietario
En la pantalla de conexión, el propietario ve los permisos que pidió tu app, con el nombre de la tabla de abajo, todos marcados. Puede desmarcar cualquiera, menos Ver datos de tu estudio (business:read), que va siempre.
- Algunos permisos van juntos bajo un mismo nombre: Ver sedes y salones son
centers:readyrooms:read; quitarlo quita los dos. - Un permiso que cambia algo trae el de ver: quitar Ver reservas quita también Gestionar reservas.
- Si tu app no puede funcionar sin un permiso, dilo en tu web antes de mandarlo a conectar, y comprueba
scopeal volver. Si falta, explícale al propietario qué no va a funcionar y ofrécele conectar de nuevo.
403 scope_required, con
el permiso que falta en required_scope. Para tenerlo, el propietario tiene que volver a conectar tu app
aceptándolo.
Los permisos que una app puede pedir
La ruta exacta de cada permiso está en la Referencia. Pide solo lo que tu app usa: el propietario ve la
lista completa antes de conectar, y en la revisión te preguntamos por qué pides cada uno.
Los que ninguna app recibe
Dos permisos son solo de las claves que crea el propietario, y ninguna app los puede tener:notifications:suppress: hacer cambios sin que el negocio les avise a sus clientes (notify: false). Callar los avisos de un negocio es una decisión del propietario, no de una app.webhooks:manage: crear URLs de avisos del negocio. Una URL creada por tu app seguiría recibiendo los eventos del negocio después de que el propietario la desconecte. Para enterarte de los cambios, leeGET /v1/eventsconevents:read.
scope, la conexión vuelve a tu web con
error=invalid_scope. Y si tu app llama a algo que los necesita, la respuesta es
scope_required.
Lo que depende del negocio
Un negocio solo le da a tu app los permisos que puede dar hoy. Si pides uno que ese negocio no tiene, no aparece en la pantalla de conexión y no viene enscope; el resto de la conexión funciona igual.
- Cambiar datos y la plata se habilitan negocio por negocio. Los permisos que cambian datos
(
sessions:write,clients:write,bookings:write) y el de los eventos (events:read) se ofrecen en negocios que tienen habilitados los cambios por API; los de plata (credits:write,memberships:write,payments:write), en negocios que además tienen habilitada la plata. Si un negocio los deshabilita después, la API respondewrite_access_disabledomoney_writes_not_enableda esos pedidos, y deja de mostrarle eventos a tu app.
Si cambian los permisos de tu app
- Si le agregas un permiso a tu app (con la revisión que corresponda, lee Revisión), las
conexiones que ya existen no lo ganan. Cada propietario tiene que volver a conectar tu app aceptándolo:
pídele a tu usuario que pase por el flujo de conexión otra vez, con el permiso nuevo en
scope. - Si le quitas un permiso, deja de valer en todas sus conexiones en menos de un minuto.

