http://docs.graylog.org/en/latest/pages/users_and_roles/permission_system.html
This will create a power user role that has permissions to do searches and create/edit dashboards (it's not necessary to include permissions already in the Reader role because Graylog will by default assign that role to all users):
curl -v -XPOST -u 'ADMIN:PASSWORD' -H 'Content-Type: application/json' 'http://graylog.example.org:9000/api/roles' -d '{"name":"Power user","description":"Dashboard and search permissions","permissions":["dashboards:create","dashboards:edit:*","dashboards:read:*","searches:absolute","searches:keyword","searches:relative"],"read_only":false}'
(Replace ADMIN, PASSWORD, and the URL as appropriate)
Here's the un-minified JSON for the Power user role: