SDK
SDK PHP v3.x
1

You are currently looking at the documentation of a previous version of Kuzzle. We strongly recommend that you use the latest version. You can also use the version selector in the top menu.

searchProfiles #

Search for security profiles, optionally returning only those linked to the provided list of security roles.


searchProfiles(filters, [options], callback) #

ArgumentsTypeDescription
filtersJSON ObjectSearch query
optionsJSON ObjectOptional parameters
callbackfunctionCallback handling the response

Options #

OptionTypeDescriptionDefault
fromnumberStarting offset0
queuablebooleanMake this request queuable or nottrue
scrollstringStart a scroll session, with a time to live equals to this parameter's value following the Elastisearch time formatundefined
sizeintegerNumber of hits to return per page10

Filters #

FilterTypeDescriptionDefault
rolesarrayContains an array roles with a list of role id[]

Callback Response #

Returns a JSON Object

Usage #

<?php
use \Kuzzle\Kuzzle;
use \Kuzzle\Security\Profile;
use \Kuzzle\Util\ProfilesSearchResult;
// optional: search only for profiles referring the listed roles
$filters = [
  'roles' => [
    'admin',
    'myrole'
  ]
];
// optional: result pagination configuration
$options = [
  'from' => 0,
  'size' => 1,
  'scroll' => '1m'
];
$kuzzle = new Kuzzle('localhost');
$security = $kuzzle->security();
try {
  $result = $security->searchProfiles($filters, $options);
  // $result instanceof ProfilesSearchResult
  foreach($result->getProfiles() as $profile) {
    // $profile instanceof Profile
  }
}
catch (ErrorException $e) {
}

Callback response:

{
  "total": 124,
  "profiles": [
    // array of Profile objects
  ],
  // only if a scroll parameter has been provided
  "scrollId": "<scroll identifier>"
}