Skip to content
This repository has been archived by the owner on Mar 10, 2020. It is now read-only.

ljesparis/gostagram

Repository files navigation

Gostagram

Unofficial and easy to use instagram client for go.

gostagram documentation Release license Powered By: gostagram


Quick Start.

Create Instagram Client

Go to instagram developer website and create a developer account, then register a new instagram client.

Implement Oauth2 Protocol

Get the access token, implementing oauth2 authorization protocol. I do recommmend oauth2 for this job. Here you can find an oauth2 example.

Download and Installation

go get github.com/ljesparis/gostagram

Usage

Basic example, using an client to consume an instagram endpoint.

package main

import (
    "fmt"
    "github.com/ljesparis/gostagram"
)

func main() {
    client := gostagram.NewClient("access_token")
    user, err := client.GetCurrentUser()
    
    if err != nil {
        fmt.Println(err)
    } else {
        fmt.Println(user.Id)
        fmt.Println(user.Username)
        fmt.Println(user.FullName)
    }
}

If you want to enable instagram signed requests mode you have to tell gostagram client, that you want to sig a request.

package main

import (
    "fmt"
    "github.com/ljesparis/gostagram"
)

func main() {
    client := gostagram.NewClient("access_token")
    client.SetSignedRequest(true)
    client.SetClientSecret("client secret")
    
    
    tags, err := client.SearchTags("golang")
    
    if err != nil {
        fmt.Println(err)
    } else {
        for _, tag := range tags {
          fmt.Println("Tag name: ", tag.Name)
        }
    }
}

Tests.

Before executing gostagram tests, please get access token, client secret and complete every empty variable in all test file, why? well, that way you could test every method with your own parameters, otherwise multiples errors will be thrown.

Note: test every method one by one, use the makefile to optimize that process.

Support us.

Contribute.

Please use Github issue tracker for everything.

  • Report issues.
  • Improve/Fix documentation.
  • Suggest new features or enhancements.

License.

gostagram license MIT