SDKs & Libraries
Official client libraries for integrating .git into your applications. Built for type safety, async-first workflows, and zero-config authentication.
JavaScript / TypeScript
v3.4.2
Fully typed Node.js & Deno client with ESM/CJS support and built-in retry logic.
npm install @git/sdk-js
Python
v2.8.0
Asyncio-native client with comprehensive type hints and PyPI packaging.
pip install git-python-sdk
Go
v1.12.4
Lightweight, concurrency-safe client optimized for high-throughput pipelines.
go get gitlab.com/git/sdk-go
Rust
v0.9.1
Zero-cost abstractions with serde integration and tokio runtime support.
cargo add git-sdk
Ruby
v4.1.0
Idiomatic Ruby client with Faraday adapter and Rails middleware integration.
gem install git-sdk-rb
Quick Start
Initialize the client with your API key. The SDK handles token rotation, request signing, and exponential backoff automatically.
TypeScript
Python
Go
import { GitClient } from '@git/sdk-js'; // Initialize with environment variable const client = new GitClient({ apiKey: process.env.GIT_API_KEY, environment: 'production' }); // List repositories with pagination const repos = await client.repos.list({ limit: 20, filter: 'active' }); console.log(repos.data);
import os from git_sdk import GitClient # Initialize with environment variable client = GitClient( api_key=os.environ["GIT_API_KEY"], environment="production" ) # List repositories with pagination repos = await client.repos.list( limit=20, filter="active" ) print(repos.data)
package main import ( "os" "log" "gitlab.com/git/sdk-go" ) func main() { client := sdk.NewClient(os.Getenv("GIT_API_KEY")) repos, err := client.Repos.List(context.Background(), &sdk.RepoFilter{ Limit: 20, Status: "active", }) if err != nil { log.Fatal(err) } fmt.Println(repos.Data) }
Authentication
All SDKs support multiple authentication methods:
- API Keys - Standard server-to-server communication. Scoped by permission.
- Service Tokens - Short-lived tokens generated via OAuth2 flow for end-user apps.
- Webhook Signing - HMAC-SHA256 verification for incoming event payloads.
- AWS/GCP/Azure IAM - Direct cloud provider authentication for hosted deployments.
Versioning & Support Policy
We follow Semantic Versioning strictly. Breaking changes only occur in major releases. Minor and patch releases are backward-compatible.
| Version Range | Status | Support Window | Features |
|---|---|---|---|
| v3.x - v4.x | Current | Active Development | WebSocket streams, AI pipeline hints, Edge deploy hooks |
| v2.x | LTS | Until Dec 2026 | Stable REST API, Webhooks, Pagination, Retry logic |
| v1.x | Deprecated | End of Life | Legacy HTTP/1.1 transport, Basic auth only |
Upgrade Path: Use the @git/migrate CLI tool to automatically refactor deprecated method calls and update configuration schemas.
Need Help?
Our SDKs are open-source and maintained by the core engineering team. Report bugs, request features, or get help implementing.