insert method

Future<LiveChatMessage> insert(
  1. LiveChatMessage request,
  2. List<String> part, {
  3. String? $fields,
})

Inserts a new resource into this collection.

request - The metadata request object.

Request parameters:

part - The part parameter serves two purposes. It identifies the properties that the write operation will set as well as the properties that the API response will include. Set the parameter value to snippet.

$fields - Selector specifying which fields to include in a partial response.

Completes with a LiveChatMessage.

Completes with a commons.ApiRequestError if the API endpoint returned an error.

If the used http.Client completes with an error when making a REST call, this method will complete with the same error.

Implementation

async.Future<LiveChatMessage> insert(
  LiveChatMessage request,
  core.List<core.String> part, {
  core.String? $fields,
}) async {
  final body_ = convert.json.encode(request);
  if (part.isEmpty) {
    throw core.ArgumentError('Parameter part cannot be empty.');
  }
  final queryParams_ = <core.String, core.List<core.String>>{
    'part': part,
    if ($fields != null) 'fields': [$fields],
  };

  const url_ = 'youtube/v3/liveChat/messages';

  final response_ = await _requester.request(
    url_,
    'POST',
    body: body_,
    queryParams: queryParams_,
  );
  return LiveChatMessage.fromJson(
      response_ as core.Map<core.String, core.dynamic>);
}