The gform_web_api_capability_get_results filter allows you to modify the capability required to get form results via the Gravity Forms web API.
Usage
add_filter('gform_web_api_capability_get_results', 'my_custom_capability_function');
function my_custom_capability_function($capability) {
// your custom code here
return $capability;
}
Parameters
- $capability (string): The capability required. Defaults to ‘gravityforms_view_entries’.
More information
See Gravity Forms Docs: gform_web_api_capability_get_results
Examples
Custom capability for getting form results
Change the required capability for getting form results to a custom capability called ‘custom_get_results’.
add_filter('gform_web_api_capability_get_results', 'my_custom_capability_function');
function my_custom_capability_function($capability) {
return 'custom_get_results';
}
Restrict access to form results for specific user role
Only allow users with the ‘editor’ role to access form results.
add_filter('gform_web_api_capability_get_results', 'editor_capability_function');
function editor_capability_function($capability) {
return 'edit_others_posts';
}
Grant access to form results for multiple roles
Allow both ‘editor’ and ‘author’ roles to access form results.
add_filter('gform_web_api_capability_get_results', 'multiple_roles_capability_function');
function multiple_roles_capability_function($capability) {
$user = wp_get_current_user();
if (in_array('editor', $user->roles) || in_array('author', $user->roles)) {
return 'gravityforms_view_entries';
}
return '';
}
Restrict access to form results based on user ID
Allow only user with ID 5 to access form results.
add_filter('gform_web_api_capability_get_results', 'user_id_capability_function');
function user_id_capability_function($capability) {
$user = wp_get_current_user();
if ($user->ID == 5) {
return 'gravityforms_view_entries';
}
return '';
}
Grant access to form results based on custom user meta
Allow users with custom user meta ‘can_view_form_results’ set to ‘yes’ to access form results.
add_filter('gform_web_api_capability_get_results', 'custom_meta_capability_function');
function custom_meta_capability_function($capability) {
$user = wp_get_current_user();
if (get_user_meta($user->ID, 'can_view_form_results', true) == 'yes') {
return 'gravityforms_view_entries';
}
return '';
}