uploadOrganizationLogo method

Future<OrganizationWithLogo?> uploadOrganizationLogo(
  1. String organizationId,
  2. MultipartFile file, {
  3. String? uploaderUserId,
})

Upload a logo for the organization

Set or replace an organization's logo, by uploading an image file. This endpoint uses the multipart/form-data request content type and accepts a file of image type. The file size cannot exceed 10MB. Only the following file content types are supported: image/jpeg, image/png, image/gif, image/webp, image/x-icon, image/vnd.microsoft.icon.

Parameters:

  • String organizationId (required): The ID of the organization for which to upload a logo

  • MultipartFile file (required):

  • String uploaderUserId: The ID of the user that will be credited with the image upload.

Implementation

Future<OrganizationWithLogo?> uploadOrganizationLogo(
  String organizationId,
  http.MultipartFile file, {
  String? uploaderUserId,
}) async {
  final response = await uploadOrganizationLogoWithHttpInfo(
    organizationId,
    file,
    uploaderUserId: uploaderUserId,
  );
  if (response.statusCode >= HttpStatus.badRequest) {
    throw ApiException(response.statusCode, await _decodeBodyBytes(response));
  }
  // When a remote server returns no body with a status of 204, we shall not decode it.
  // At the time of writing this, `dart:convert` will throw an "Unexpected end of input"
  // FormatException when trying to decode an empty string.
  if (response.body.isNotEmpty &&
      response.statusCode != HttpStatus.noContent) {
    return await apiClient.deserializeAsync(
      await _decodeBodyBytes(response),
      'OrganizationWithLogo',
    ) as OrganizationWithLogo;
  }
  return null;
}