Permisos que otorga el Merchant para que la app acceda solo a los datos de los scopes autorizados.
- “all”: La aplicación tendrá permiso a todos los recursos asociados a ese scope.
- “xxxxxxxxx-xxxx-xxxx-xxxxxxxxxxxxxxxx”: La aplicación tendrá permiso al _id del recurso asociado al alcance.
Por ejemplo:
El Merchant otorga el alcance “read: stock”. Como el stock varia según la bodega, el Merchant puede seleccionar otorgar acceso a todas sus bodegas o a una/varias bodegas específicas.
- Permiso encendido para leer el Stock de Todas las sucursales y bodegas:
Response:
{ "_id": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX", "status": "created", "OauthClientId": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX", "MerchantId": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX", "MerchantAppId": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX", "CreatedById": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX", "UpdatedById": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX", "OwnerId": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX", "scopes": { "read:stocks": { "all": true } }, "expiresAt": "2024-10-15T19:57:26.468Z", "refreshToken": "rt-XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX", "refreshTokenExpiresAt": "2024-10-17T13:57:26.468Z", "updatedAt": "2024-10-15T13:57:26.000Z", "createdAt": "2024-10-15T13:57:26.000Z", "token": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.XXXXXXXXXXXX........." }
Si el merchant otorga permisos "all", deberá consultar el endpoint correspondiente según sea el caso para obtener el listado de todos los recursos.
- Permiso para acceder solo a una bodega o sucursal:
Response:
{ "_id": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX", "status": "created", "OauthClientId": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX", "MerchantId": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX", "MerchantAppId": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX", "CreatedById": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX", "UpdatedById": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX", "OwnerId": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX", "scopes": { "read:stocks": { "all": false, "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX": false, "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXX1234": true // Bodega con acceso } }, "expiresAt": "2024-10-15T19:57:26.468Z", "refreshToken": "rt-XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX", "refreshTokenExpiresAt": "2024-10-17T13:57:26.468Z", "updatedAt": "2024-10-15T13:57:26.000Z", "createdAt": "2024-10-15T13:57:26.000Z", "token": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.XXXXXXXXXXXX........." }
En este caso en el json del scope el valor del campo “all” es “false” por lo que la aplicación no tiene acceso a todas las bodegas. Pero tiene acceso a la bodega con id = "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXX1234".
- Sin permiso para leer stock de ninguna sucursal o bodega:
Response:
{ "_id": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX", "status": "created", "OauthClientId": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX", "MerchantId": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX", "MerchantAppId": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX", "CreatedById": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX", "UpdatedById": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX", "OwnerId": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX", "scopes": { "read:stocks": { "all": false // Ninguna bodega con acceso. } }, "expiresAt": "2024-10-15T19:57:26.468Z", "refreshToken": "rt-XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX", "refreshTokenExpiresAt": "2024-10-17T13:57:26.468Z", "updatedAt": "2024-10-15T13:57:26.000Z", "createdAt": "2024-10-15T13:57:26.000Z", "token": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.XXXXXXXXXXXX........." }
Tipos de scope:
- Read: Otorga permisos de solo lectura para el scope seleccionado.
- Write: Otorga permisos de escritura para el scope seleccionado.
- Manage: Otorga permisos para administrar(lectura/escritura) los recursos del scope seleccionado de forma global, no permite seleccionar por recurso.
Los diferentes scopes que tenemos disponibles son los siguientes:
- Permisos para consultar/escribir los productos, sus versiones, categorías, color, talla, entre otros. Se otorga acceso global.
-
- read:products
- write:products
-
- Permisos para consultar/escribir el stock de los productos según las bodegas. Se puede otorgar acceso a global o segmentado.
-
- read:stocks
- write:stocks
-
- Permisos para consultar/escribir el precio de los productos según las listas de precios. Se puede otorgar acceso a global o segmentado.
-
- read:prices
- write:prices
-
- Permisos para consultar/escribir/administrar las ventas de los diferentes canales de venta. Se puede otorgar acceso a global o segmentado.
-
- read:checkouts
- write:checkouts
- manage:checkouts Este scope se debe habilitar solo para las aplicaciones que son canales de venta.
-
- Permisos para consultar/escribir/administrar la asociación de una versión de un producto a los diferentes canales de venta. Se puede otorgar acceso a global o segmentado por canal.
-
- read:product_links
- write:product_links
- manage:product_links
- Este scope se debe habilitar solo para las aplicaciones que son canales de venta.
-
- Permisos para consultar/escribir/administrar las bodegas que tiene creadas el merchant. Se puede otorgar acceso a global o segmentado.
-
- read:warehouses
- write:warehouses
- manage:warehouses
-
- Permisos para consultar/escribir/administrar los clientes que tiene creados el merchant. Se puede otorgar acceso a global.
-
- read:clients
- write:clients
- manage:clients
-
- Permisos para consultar/escribir en las conexiones con couriers que tiene el merchant creada . Se puede otorgar acceso a global o segmentado.
-
- read:couriers
- write:couriers
-
- Permisos para consultar los canales que tiene creados el merchant. Se puede otorgar acceso a global o segmentado.
-
- read:channels
-
- Permisos para generar etiquetas de despacho desde los canales de ventas que permiten esta funcionalidad.
-
- read:channels
- read:checkouts
- write:checkouts
-
Equipo Integraciones API Multivende
0 comentarios
El artículo está cerrado para comentarios.