anchor.diff:  expected_user_ctx_params(?WEBDAV_HELPER_NAME, #{<<"credentialsType">> := <<"none">>}) ->
       [<<"credentialsType">>];
   expected_user_ctx_params(?WEBDAV_HELPER_NAME, _) ->
  -    [<<"credentialsType">>, <<"credentials">>];
  +    [<<"credentialsType">>, <<"credentials">>,
  +        {optional, <<"credentials">>}, {optional, <<"adminId">>},
  +        {optional, <<"onedataAccessToken">>}, {optional, <<"accessToken">>},
  +        {optional, <<"accessTokenTTL">>}
  +    ];
   expected_user_ctx_params(?NULL_DEVICE_HELPER_NAME, _) ->
       [<<"uid">>, <<"gid">>].
  -
  -
  -optional_user_ctx_params(?WEBDAV_HELPER_NAME, _) ->
  -    [<<"credentials">>, <<"adminId">>,
  -        <<"onedataAccessToken">>, <<"accessToken">>,
  -        <<"accessTokenTTL">>];
  -
  -optional_user_ctx_params(_, _) ->
  -    [].
   
   
   %%--------------------------------------------------------------------
  
positive.code: -spec validate_group_ctx(storage:helper(), group_ctx()) ->
      ok | {error, Reason :: term()}.
  validate_group_ctx(#helper{name = ?POSIX_HELPER_NAME}, GroupCtx) ->
      check_user_or_group_ctx_fields([<<"gid">>], GroupCtx);
  validate_group_ctx(#helper{name = ?GLUSTERFS_HELPER_NAME}, GroupCtx) ->
      check_user_or_group_ctx_fields([<<"gid">>], GroupCtx);
  validate_group_ctx(#helper{name = ?NULL_DEVICE_HELPER_NAME}, GroupCtx) ->
      check_user_or_group_ctx_fields([<<"gid">>], GroupCtx);
  validate_group_ctx(#helper{name = ?WEBDAV_HELPER_NAME}, _GroupCtx) ->
      ok;
  validate_group_ctx(#helper{name = HelperName}, _GroupCtx) ->
      {error, {group_ctx_not_supported, HelperName}}.
  
  %%--------------------------------------------------------------------
  %% @doc
  
negative.code: -spec new_helper(name(), args(), user_ctx(), Insecure :: boolean(),
      storage_path_type()) -> {ok, helpers:helper()}.
  new_helper(HelperName, Args, AdminCtx, Insecure, StoragePathType) ->
      Fields = expected_helper_args(HelperName),
      ok = validate_fields(Fields, Args, false),
      ok = validate_user_ctx(HelperName, AdminCtx),
      {ok, #helper{
          name = HelperName,
  