Skip to content

API Clients

Client libraries for accessing the cyber.trackr.live API in different programming languages.

Available Clients

Official Clients

💎 Ruby Client

Installation:

bash
gem install cyber_trackr_live

Requirements: Ruby 3.2+

The Ruby client is our original reference implementation with comprehensive helper methods for STIG workflows.


🐍 Python Client ✨ NEW

Installation:

bash
pip install cyber-trackr-live
# Or with optimizations:
pip install cyber-trackr-live[optimizations]

Requirements: Python 3.8+

The Python client features modern type hints, smart search, fuzzy matching, and optional HTTP caching (30x faster).

Feature Comparison

FeatureRubyPython
Basic Functionality
List STIGs/SRGs
Fetch documents
Batch fetching
Progress callbacks
Cross-referencing
Advanced Features
Smart search
Fuzzy matching
HTTP caching✅ Optional
Rate limitingManual✅ Optional
Async/await
Type hintsN/A✅ Full
ID parsing utilities
Severity filtering

Future Clients

We plan to support additional languages based on community needs:

  • TypeScript/JavaScript - For web applications and Node.js services
  • Go - For high-performance microservices
  • Java - For enterprise applications
  • Rust - For systems programming

Generate Your Own Client

Want to use a different language? Our Client Generation Guide provides step-by-step instructions for generating clients in TypeScript, Python, Go, Java, and many other languages:

All clients are generated from the same OpenAPI specification, ensuring consistency and version synchronization across language implementations.

Which Client Should I Use?

Choose Ruby if:

  • You're working in a Ruby/Rails environment
  • You need production-proven, battle-tested code
  • You prefer established, stable tooling

Choose Python if:

  • You're working in a Python environment
  • You want modern features (async, caching, fuzzy search)
  • You need type safety and IDE autocomplete
  • Performance is critical (caching provides 30x speedup)
  • You're doing data analysis or automation

Generate Your Own if:

  • You need a different language (Go, TypeScript, Java, etc.)
  • You want to customize the generated code
  • You have specific framework requirements

Contributing

Interested in adding support for your preferred language? See our Contributing Guide for information on:

  • Requesting new client languages
  • Testing client generation
  • Submitting improvements

Released under the Apache-2.0 License.