Skip to content

Latest commit

 

History

History
76 lines (50 loc) · 1.67 KB

README.md

File metadata and controls

76 lines (50 loc) · 1.67 KB

nuon-go

An interface for working with our API from go.

Overview

The Nuon API allows you to configure your Nuon apps, release to them and create new installs.

Full documentation is available at https://docs.nuon.co.

All endpoints in the API follow REST conventions and standard HTTP methods. You can find the OpenAPI Spec here

Installation

In your project, you can install the package directly using go get:

go get github.com/nuonco/nuon-go

In your code, add the following import:

import nuon "github.com/nuonco/nuon-go"

Create a client

Create a new api client, using an API key set in the environment.

apiURL := "https://api.nuon.co"
apiToken := os.Getenv("NUON_API_TOKEN")
orgID := os.Getenv("NUON_ORG_ID")

apiClient, err := client.New(s.v,
  client.WithAuthToken(apiToken),
  client.WithURL(apiURL),
  client.WithOrgID(orgID),
)
if err != nil {
  return fmt.Errorf("unable to get api client: %w", err)
}

Example usage

List all apps in an org

apps, err := apiClient.ListApps(ctx)

Get an app

app, err := apiClient.GetApp(ctx, appID)

Contributing

Please submit a PR, and if you would like help, contact us on our community slack.

Since this library relies on generating client code from our graphql api, please run to ensure your generated client code is up to date.

$ go generate ./...

You can also change the open api spec to generate against, by setting the API_URL field to a different value:

$ NUON_API_URL=http://localhost:8081 go generate ./...