AI Agents
SDK Documentation
Go SDK
High-performance Go SDK for AI agent identity and access management.
Estimated time: 10 minutes
Features
Go 1.21+ support
Zero dependencies
Context support
Connection pooling
gRPC transport
Concurrent safe
1
Installation
go get github.com/tigeraccess/sdk-go2
Initialize Client
package main
import (
"context"
"github.com/tigeraccess/sdk-go/tigeraccess"
)
func main() {
// Using API key
client, err := tigeraccess.NewClient(
tigeraccess.WithAPIKey("your-api-key"),
)
if err != nil {
log.Fatal(err)
}
defer client.Close()
}3
Create and Use Agent
ctx := context.Background()
// Create an agent
agent, err := client.Agents.Create(ctx, &tigeraccess.AgentCreateParams{
Name: "my-agent",
Permissions: []string{"database:read:*"},
RateLimits: &tigeraccess.RateLimits{
RequestsPerMinute: 100,
},
})
if err != nil {
log.Fatal(err)
}
// Use agent session
session, err := agent.CreateSession(ctx)
if err != nil {
log.Fatal(err)
}
defer session.Close()
result, err := session.DB.Query(ctx, "analytics", "SELECT * FROM users")
if err != nil {
log.Fatal(err)
}
fmt.Println(result)4
With Context Timeout
ctx, cancel := context.WithTimeout(context.Background(), 30*time.Second)
defer cancel()
session, err := agent.CreateSession(ctx)
if err != nil {
if errors.Is(err, context.DeadlineExceeded) {
log.Println("Session creation timed out")
}
log.Fatal(err)
}
defer session.Close()
// All operations respect the context
result, err := session.DB.Query(ctx, "analytics", "SELECT * FROM users LIMIT 10")