This tutorial uses the Neynar Go SDK

This SDK is in beta and may change in the future. Please let us know if you encounter any issues or have suggestions for improvement.

Prerequisites

Project Setup

Initialize Project Directory

mkdir get-started-with-neynar-go-sdk
cd get-started-with-neynar-go-sdk
go mod init getting_started

Add Neynar Go SDK as a dependency

go get github.com/neynarxyz/go-sdk/generated/rust_sdk

Implementation: Look up a user by their verified address

Replace the contents of main.go with your Go code using the Neynar Go SDK.

package getting_started

import (
  "context"
  "fmt"

  openapiclient "github.com/neynarxyz/go-sdk/generated/neynar_sdk"
)

func main() {
  configuration := openapiclient.NewConfiguration()
  configuration.AddDefaultHeader("x-api-key", "NEYNAR_API_DOCS")
  apiClient := openapiclient.NewAPIClient(configuration)

  request := apiClient.UserAPI.
    FetchBulkUsersByEthOrSolAddress(context.Background()).
    Addresses("0xBFc7CAE0Fad9B346270Ae8fde24827D2D779eF07").
    AddressTypes([]openapiclient.BulkUserAddressType{openapiclient.AllowedBulkUserAddressTypeEnumValues[1]})

  resp, httpRes, err := request.Execute()
  if err != nil {
    fmt.Printf("Error: %v\n", err)
    return
  }
  defer httpRes.Body.Close()
  fmt.Printf("Users: %+v\n", resp)
}

Running the project

go run main.go

Result

You should see a response similar to this (formatted for readability):

Users: [{
    fid: 20603,
    username: "topocount.eth",
    display_name: "Topocount",
    // ...other fields...
}]

Congratulations! You successfully set up the Neynar Go SDK and used it to look up a user by their address!

Ready to start building?

Get your subscription at neynar.com and reach out to us on Telegram with any questions!