Categorygithub.com/minio/minio-go
modulepackage
1.0.0
Repository: https://github.com/minio/minio-go.git
Documentation: pkg.go.dev

# README

Minio Go Library for Amazon S3 Compatible Cloud Storage Gitter

Description

Minio Go library is a simple client library for S3 compatible cloud storage servers. Supports AWS Signature Version 4 and 2. AWS Signature Version 4 is chosen as default.

List of supported cloud storage providers.

  • AWS Signature Version 4

    • Amazon S3
    • Minio
  • AWS Signature Version 2

    • Google Cloud Storage (Compatibility Mode)
    • Openstack Swift + Swift3 middleware
    • Ceph Object Gateway
    • Riak CS

Install

If you do not have a working Golang environment, please follow Install Golang.

$ go get github.com/minio/minio-go

Example

ListBuckets()

This example shows how to List your buckets.

package main

import (
	"log"

	"github.com/minio/minio-go"
)

func main() {
	// Requests are always secure (HTTPS) by default. Set insecure=true to enable insecure (HTTP) access.
	// This boolean value is the last argument for New().

	// New returns an Amazon S3 compatible client object. API copatibality (v2 or v4) is automatically
	// determined based on the Endpoint value.
	s3Client, err := minio.New("s3.amazonaws.com", "YOUR-ACCESS-KEY-HERE", "YOUR-SECRET-KEY-HERE", false)
	if err != nil {
	    log.Fatalln(err)
	}
	buckets, err := s3Client.ListBuckets()
	if err != nil {
		log.Fatalln(err)
	}
	for _, bucket := range buckets {
		log.Println(bucket)
	}
}

Documentation

Bucket Operations.

Object Operations.

File Object Operations.

Presigned Operations.

API Reference

GoDoc

Contribute

Contributors Guide

Build Status Build status

# Functions

ErrEntityTooLarge - Input size is larger than supported maximum.
ErrEntityTooSmall - Input size is smaller than supported minimum.
ErrInvalidArgument - Invalid argument response.
ErrInvalidBucketName - Invalid bucket name response.
ErrInvalidObjectName - Invalid object name response.
ErrInvalidParts - Invalid number of parts.
ErrUnexpectedEOF - Unexpected end of file reached.
New - instantiate minio client Client, adds automatic verification of signature.
NewPostPolicy - Instantiate new post policy.
NewV2 - instantiate minio client with Amazon S3 signature version '2' compatibility.
NewV4 - instantiate minio client with Amazon S3 signature version '4' compatibility.
ToErrorResponse - Returns parsed ErrorResponse struct from body and http headers.

# Constants

Different types of supported signatures - default is Latest i.e SignatureV4.
Different types of supported signatures - default is Latest i.e SignatureV4.
Different types of supported signatures - default is Latest i.e SignatureV4.

# Variables

ErrInvalidObjectPrefix - Invalid object prefix response is similar to object name response.

# Structs

BucketInfo container for bucket metadata.
Client implements Amazon S3 compatible methods.
ErrorResponse - Is the typed error returned by all API operations.
Object represents an open object.
ObjectInfo container for object metadata.
ObjectMultipartInfo container for multipart object metadata.
PostPolicy - Provides strict static type conversion and validation for Amazon S3's POST policy JSON string.

# Type aliases

BucketACL - Bucket level access control.
SignatureType is type of Authorization requested for a given HTTP request.