getNoteToSelfConversationRaw method

Get the "Note to self" conversation for the user.

It will be automatically created when it is currently missing.

This method and the response it returns is experimental. The API might change without a major version bump.

Returns a Future containing a DynamiteRawResponse with the raw HttpClientResponse and serialization helpers. Throws a DynamiteApiException if the API call does not return an expected status code.

Parameters:

  • apiVersion Defaults to v4.
  • oCSAPIRequest Required to be true for the API request to pass. Defaults to true.

Status codes:

  • 200: Room returned successfully

See:

Implementation

@_i4.experimental
_i1.DynamiteRawResponse<RoomGetNoteToSelfConversationResponseApplicationJson,
    RoomRoomGetNoteToSelfConversationHeaders> getNoteToSelfConversationRaw({
  RoomGetNoteToSelfConversationApiVersion? apiVersion,
  bool? oCSAPIRequest,
}) {
  final _parameters = <String, dynamic>{};
  final _headers = <String, String>{'Accept': 'application/json'};

// coverage:ignore-start
  final authentication = _rootClient.authentications?.firstWhereOrNull(
    (auth) => switch (auth) {
      _i1.DynamiteHttpBearerAuthentication() || _i1.DynamiteHttpBasicAuthentication() => true,
      _ => false,
    },
  );

  if (authentication != null) {
    _headers.addAll(
      authentication.headers,
    );
  } else {
    throw Exception('Missing authentication for bearer_auth or basic_auth');
  }

// coverage:ignore-end
  var $apiVersion =
      _$jsonSerializers.serialize(apiVersion, specifiedType: const FullType(RoomGetNoteToSelfConversationApiVersion));
  $apiVersion ??= 'v4';
  _parameters['apiVersion'] = $apiVersion;

  var $oCSAPIRequest = _$jsonSerializers.serialize(oCSAPIRequest, specifiedType: const FullType(bool));
  $oCSAPIRequest ??= true;
  _headers['OCS-APIRequest'] = const _i2.HeaderEncoder().convert($oCSAPIRequest);

  final _path = _i3.UriTemplate('/ocs/v2.php/apps/spreed/api/{apiVersion}/room/note-to-self').expand(_parameters);
  return _i1.DynamiteRawResponse<RoomGetNoteToSelfConversationResponseApplicationJson,
      RoomRoomGetNoteToSelfConversationHeaders>(
    response: _rootClient.executeRequest(
      'get',
      _path,
      headers: _headers,
      validStatuses: const {200},
    ),
    bodyType: const FullType(RoomGetNoteToSelfConversationResponseApplicationJson),
    headersType: const FullType(RoomRoomGetNoteToSelfConversationHeaders),
    serializers: _$jsonSerializers,
  );
}