The official google photos client doesn't have upload functionality, this repo aims to complete it with upload functionality and improve ease of use for classic use cases.
It contains three packages, github.com/nmrshll/google-photos-api-client-go/lib-gphotos simply wraps the official library to offer the same functionality plus upload, the two other packages try to make it easier to use in classic cases:
Download using go get github.com/nmrshll/google-photos-api-client-go
Then use this way:
func main() {
// ask the user to authenticate on google in the browser
photosClient, err := gphotosclient.NewClient(
gphotosclient.AuthenticateUser(
gphotoslib.NewOAuthConfig(gphotoslib.APIAppCredentials{
ClientID: "________________",
ClientSecret: "____________________"},
),
),
)
if err != nil {
log.Fatal(err)
}
_, err = photosClient.UploadFile("/path/to/file")
if err != nil {
log.Fatal(err)
}
}
func main() {
fmt.Println("Hello world !")
}
[server-side]():
[no server, all client side (desktop,cli,mobile,...)]():