func PutBlock(apiClient drive.APIClient, reader io.Reader) (*drive.BlockRefs, error) { putBlockClient, err := apiClient.PutBlock(context.Background()) if err != nil { return nil, err } if _, err := io.Copy(protostream.NewStreamingBytesWriter(putBlockClient), reader); err != nil { return nil, err } return putBlockClient.CloseAndRecv() }