$search_Request method
- @experimental
Search for sharees.
Returns a DynamiteRequest backing the search operation.
Throws a DynamiteApiException if the API call does not return an expected status code.
Parameters:
searchText to search for. Defaults to"".itemTypeLimit to specific item types.pagePage offset for searching. Defaults to1.perPageLimit amount of search results per page. Defaults to200.shareTypeLimit to specific share types.lookupIf a global lookup should be performed too. Defaults to0.oCSAPIRequestRequired to be true for the API request to pass. Defaults totrue.
Status codes:
- 200: Sharees search result returned
- 400: Invalid search parameters
See:
searchfor a method executing this request and parsing the response.- $search_Serializer for a converter to parse the
Responsefrom an executed this request.
Implementation
@_i2.experimental
_i3.Request $search_Request({
String? search,
String? itemType,
int? page,
int? perPage,
ShareesapiSearchShareType? shareType,
ShareesapiSearchLookup? lookup,
bool? oCSAPIRequest,
}) {
final _parameters = <String, Object?>{};
var __search = _$jsonSerializers.serialize(search, specifiedType: const FullType(String));
__search ??= '';
_parameters['search'] = __search;
final __itemType = _$jsonSerializers.serialize(itemType, specifiedType: const FullType(String));
_parameters['itemType'] = __itemType;
var __page = _$jsonSerializers.serialize(page, specifiedType: const FullType(int));
__page ??= 1;
_parameters['page'] = __page;
var __perPage = _$jsonSerializers.serialize(perPage, specifiedType: const FullType(int));
__perPage ??= 200;
_parameters['perPage'] = __perPage;
final __shareType =
_$jsonSerializers.serialize(shareType, specifiedType: const FullType(ShareesapiSearchShareType));
_parameters['shareType'] = __shareType;
var __lookup = _$jsonSerializers.serialize(lookup, specifiedType: const FullType(ShareesapiSearchLookup));
__lookup ??= 0;
_parameters['lookup'] = __lookup;
final _path = _i6.UriTemplate(
'/ocs/v2.php/apps/files_sharing/api/v1/sharees{?search*,itemType*,page*,perPage*,shareType*,lookup*}',
).expand(_parameters);
final _uri = Uri.parse('${_rootClient.baseURL}$_path');
final _request = _i3.Request('get', _uri);
_request.headers['Accept'] = 'application/json';
// coverage:ignore-start
final authentication = _i4.IterableExtension(_rootClient.authentications)?.firstWhereOrNull(
(auth) => switch (auth) {
_i1.DynamiteHttpBearerAuthentication() || _i1.DynamiteHttpBasicAuthentication() => true,
_ => false,
},
);
if (authentication != null) {
_request.headers.addAll(
authentication.headers,
);
} else {
throw Exception('Missing authentication for bearer_auth or basic_auth');
}
// coverage:ignore-end
var __oCSAPIRequest = _$jsonSerializers.serialize(oCSAPIRequest, specifiedType: const FullType(bool));
__oCSAPIRequest ??= true;
_request.headers['OCS-APIRequest'] = const _i5.HeaderEncoder().convert(__oCSAPIRequest);
return _request;
}