Roles & permissions List available permissions query { permissions { edges { node { pk id codename displayName } } } } Add permission to merchant RequestVariablesResponse mutation ( $merchantId: ID! $permissionId: ID! ) { addPermissionToMerchant( input: { merchantId: $merchantId permissionId: $permissionId } ) { success errors } } { "merchantId": 84, "permissionId": 5 } { "data": { "addPermissionToMerchant": { "success": true, "errors": null } } } Create a role RequestVariablesResponse mutation ( $displayName: String! $permissions: [ID] ) { createRole( input: { displayName: $displayName permissions: $permissions } ) { success errors } } { "displayName": "Manager", "permissions": [1, 2, 3] } { "data": { "createRole": { "success": true, "errors": null } } } Update a role RequestVariablesResponse mutation ( $id: ID! $displayName: String $permissions: [ID] ) { updateRole( input: { id: $id displayName: $displayName permissions: $permissions } ) { success errors } } { "id": 1, "displayName": "Manager - edited" } { "data": { "updateRole": { "success": true, "errors": null } } } Delete a role RequestVariablesResponse mutation ( $id: ID! ) { deleteRole( input: { id: $id } ) { success errors } } { "id": 1 } { "data": { "deleteRole": { "success": true, "errors": null } } } Add role to merchant RequestVariablesResponse mutation ( $merchantId: ID! $roleId: ID! ) { addRoleToMerchant( input: { merchantId: $merchantId roleId: $roleId } ) { success errors } } { "merchantId": 84, "roleId": 5 } { "data": { "addRoleToMerchant": { "success": true, "errors": null } } }