Skip to content

Go SDK

go get github.com/nimbus/nimbus-go

Initializing the client

package main

import (
    "context"

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

func main() {
    client := nimbus.NewClient(nimbus.WithAPIKey("YOUR_API_KEY"))
    ctx := context.Background()

    _ = client
    _ = ctx
}

Creating a record

record, err := client.Buckets.Records.Create(ctx, "my-first-bucket", &nimbus.RecordParams{
    Name:  "hello-world",
    Value: 42,
})
if err != nil {
    log.Fatal(err)
}

Pagination

iter := client.Buckets.Records.List(ctx, "my-first-bucket", nil)
for iter.Next() {
    record := iter.Record()
    fmt.Println(record.Name, record.Value)
}
if err := iter.Err(); err != nil {
    log.Fatal(err)
}

See Pagination for the cursor semantics the iterator wraps.

Error handling

var apiErr *nimbus.APIError
if errors.As(err, &apiErr) {
    fmt.Println(apiErr.Code, apiErr.Message, apiErr.RequestID)
}