import type React from 'react'; interface Sdk { name: string; language: string; badge: string; installCmd: string; codeExample: string; repoUrl: string; } const sdks: Sdk[] = [ { name: 'Node.js SDK', language: 'typescript', badge: 'TypeScript', installCmd: 'npm install @sentryagent/idp-sdk', codeExample: `import { AgentIdPClient } from '@sentryagent/idp-sdk'; const client = new AgentIdPClient({ apiUrl: process.env.AGENTIDP_URL!, clientId: process.env.AGENTIDP_CLIENT_ID!, clientSecret: process.env.AGENTIDP_CLIENT_SECRET!, }); // Register a new agent const agent = await client.agents.register({ name: 'my-ai-agent', description: 'Production summarisation agent', }); console.log('Agent ID:', agent.agentId); // Issue an access token const { accessToken } = await client.tokens.issue(agent.agentId); console.log('Token:', accessToken);`, repoUrl: 'https://github.com/sentryagent/sdk-node', }, { name: 'Python SDK', language: 'python', badge: 'Python', installCmd: 'pip install sentryagent-idp', codeExample: `from sentryagent_idp import AgentIdPClient client = AgentIdPClient( api_url=os.environ["AGENTIDP_URL"], client_id=os.environ["AGENTIDP_CLIENT_ID"], client_secret=os.environ["AGENTIDP_CLIENT_SECRET"], ) # Register a new agent agent = client.agents.register( name="my-ai-agent", description="Production summarisation agent", ) print("Agent ID:", agent.agent_id) # Issue an access token token_response = client.tokens.issue(agent.agent_id) print("Token:", token_response.access_token)`, repoUrl: 'https://github.com/sentryagent/sdk-python', }, { name: 'Go SDK', language: 'go', badge: 'Go', installCmd: 'go get github.com/sentryagent/idp-sdk-go', codeExample: `import ( "fmt" "os" idp "github.com/sentryagent/idp-sdk-go" ) client := idp.NewClient(idp.Config{ APIURL: os.Getenv("AGENTIDP_URL"), ClientID: os.Getenv("AGENTIDP_CLIENT_ID"), ClientSecret: os.Getenv("AGENTIDP_CLIENT_SECRET"), }) // Register a new agent agent, err := client.Agents.Register(ctx, &idp.RegisterAgentInput{ Name: "my-ai-agent", Description: "Production summarisation agent", }) if err != nil { panic(err) } fmt.Println("Agent ID:", agent.AgentID) // Issue an access token token, err := client.Tokens.Issue(ctx, agent.AgentID) fmt.Println("Token:", token.AccessToken)`, repoUrl: 'https://github.com/sentryagent/sdk-go', }, { name: 'Java SDK', language: 'java', badge: 'Java', installCmd: ` ai.sentryagent idp-sdk 1.0.0 `, codeExample: `import ai.sentryagent.idp.AgentIdPClient; import ai.sentryagent.idp.model.Agent; import ai.sentryagent.idp.model.TokenResponse; AgentIdPClient client = AgentIdPClient.builder() .apiUrl(System.getenv("AGENTIDP_URL")) .clientId(System.getenv("AGENTIDP_CLIENT_ID")) .clientSecret(System.getenv("AGENTIDP_CLIENT_SECRET")) .build(); // Register a new agent Agent agent = client.agents().register( RegisterAgentRequest.builder() .name("my-ai-agent") .description("Production summarisation agent") .build() ); System.out.println("Agent ID: " + agent.getAgentId()); // Issue an access token TokenResponse token = client.tokens().issue(agent.getAgentId()); System.out.println("Token: " + token.getAccessToken());`, repoUrl: 'https://github.com/sentryagent/sdk-java', }, ]; export default function SdksPage(): React.ReactElement { return (

Official SDKs

Native libraries for your language of choice. Every SDK is type-safe, fully tested, and maintained by the SentryAgent team.

{sdks.map((sdk) => (

{sdk.name}

{sdk.badge}
View on GitHub →

Installation

                  {sdk.installCmd}
                

Quick Start

                  {sdk.codeExample}
                
))}
); }