SDK ReferenceGoAPI Reference

Go SDK — API Reference

Database

client.DB.Query[T](ctx, sql, params...)           // []T, error
client.DB.QueryOne[T](ctx, sql, params...)         // *T, error
client.DB.Exec(ctx, sql, params...)                // error
client.DB.Batch(ctx, []aerostack.BatchStatement)   // []aerostack.BatchResult, error

Cache

client.Cache.Get(ctx, key, dest)                   // bool (found), error
client.Cache.Set(ctx, key, value, ttlSeconds)       // error
client.Cache.Delete(ctx, key)                       // error
client.Cache.Has(ctx, key)                          // bool, error

Auth

client.Auth.VerifyToken(ctx, token)                // *aerostack.User, error

Storage

client.Storage.Upload(ctx, aerostack.UploadInput{
    File: reader,
    Path: "uploads/file.jpg",
    ContentType: "image/jpeg",
})                                                  // aerostack.UploadResult, error
 
client.Storage.Delete(ctx, key)                    // error

AI

client.AI.Complete(ctx, aerostack.CompletionInput{
    Prompt: "Hello",
    Model: "gpt-4o-mini",
    MaxTokens: 256,
})                                                  // aerostack.CompletionResult, error
 
client.AI.Embed(ctx, "text to embed")               // []float64, error

Queue

client.Queue.Send(ctx, "job-type", payload, aerostack.QueueOptions{
    DelaySeconds: 60,
    MaxRetries: 3,
})                                                  // error

Realtime

client.Socket.Emit(ctx, "event", data, "room/id") // void
channel, err := client.Realtime.Channel("table")
channel.On("INSERT", func(p aerostack.RealtimePayload) { ... })
channel.Subscribe()
channel.Track(map[string]any{"userId": "123"})
channel.Unsubscribe()

Secrets

client.Secrets.Get(ctx, "SECRET_NAME")             // string, error