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-go
2

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")

Ready to Build

Check out examples for common integration patterns.

View Examples