$getShares_Request method

  1. @experimental
Request $getShares_Request({
  1. String? sharedWithMe,
  2. String? reshares,
  3. String? subfiles,
  4. String? path,
  5. String? includeTags,
  6. bool? oCSAPIRequest,
})

Get shares of the current user.

Returns a DynamiteRequest backing the getShares operation. Throws a DynamiteApiException if the API call does not return an expected status code.

Parameters:

  • sharedWithMe Only get shares with the current user. Defaults to "false".
  • reshares Only get shares by the current user and reshares. Defaults to "false".
  • subfiles Only get all shares in a folder. Defaults to "false".
  • path Get shares for a specific path. Defaults to "".
  • includeTags Include tags in the share. Defaults to "false".
  • oCSAPIRequest Required to be true for the API request to pass. Defaults to true.

Status codes:

  • 200: Shares returned
  • 404: The folder was not found or is inaccessible

See:

  • getShares for a method executing this request and parsing the response.
  • $getShares_Serializer for a converter to parse the Response from an executed this request.

Implementation

@_i2.experimental
_i3.Request $getShares_Request({
  String? sharedWithMe,
  String? reshares,
  String? subfiles,
  String? path,
  String? includeTags,
  bool? oCSAPIRequest,
}) {
  final _parameters = <String, Object?>{};
  var __sharedWithMe = _$jsonSerializers.serialize(sharedWithMe, specifiedType: const FullType(String));
  __sharedWithMe ??= 'false';
  _parameters['shared_with_me'] = __sharedWithMe;

  var __reshares = _$jsonSerializers.serialize(reshares, specifiedType: const FullType(String));
  __reshares ??= 'false';
  _parameters['reshares'] = __reshares;

  var __subfiles = _$jsonSerializers.serialize(subfiles, specifiedType: const FullType(String));
  __subfiles ??= 'false';
  _parameters['subfiles'] = __subfiles;

  var __path = _$jsonSerializers.serialize(path, specifiedType: const FullType(String));
  __path ??= '';
  _parameters['path'] = __path;

  var __includeTags = _$jsonSerializers.serialize(includeTags, specifiedType: const FullType(String));
  __includeTags ??= 'false';
  _parameters['include_tags'] = __includeTags;

  final _path = _i6.UriTemplate(
    '/ocs/v2.php/apps/files_sharing/api/v1/shares{?shared_with_me*,reshares*,subfiles*,path*,include_tags*}',
  ).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;
}