teambattles_sdk
Official Ruby SDK for the TeamBattles public developer API.
Auto-generated from the TeamBattles OpenAPI 3.1 specification with Microsoft Kiota. This README is generated by pnpm sdk:docs and regenerates on every API change - do not edit it by hand.
- Language: Ruby
- Registry: RubyGems
- Maturity: Preview (may be quarantined in CI; see sdks/QUARANTINE.md)
Install
gem install teambattles_sdk
Dependencies
The generated client is a thin veneer over the shared Kiota runtime. This package depends on:
microsoft_kiota_abstractionsmicrosoft_kiota_faradaymicrosoft_kiota_serialization_json
Create a client
Construct a client once with your API key. The factory wires a bearer-token authentication provider and points the client at the production base URL.
require "teambattles_sdk"
client = TeamBattlesSdk.create_client(ENV.fetch("TEAMBATTLES_API_KEY"))
First call: list the authenticated user's matches
# List the authenticated user's matches (requires matches.user_matches: read)
body = TeamBattlesSdk::Models::MatchesRequestBody.new
body.num_items = 25
result = client.user.matches.post(body)
(result.page || []).each do |match|
puts "#{match.id} #{match.status}"
end
Authentication
Every request is authenticated with an API key sent as a bearer token:
Authorization: Bearer tb_<your-key>
Create and manage keys at Settings > Developer. Keys carry granular permission scopes - listing the authenticated user's matches requires matches.user_matches: read.
Errors return a JSON body of the form { "error": "<machine_code>", "details": "<optional message>" }. Treat the error machine code - not the details message - as the stable programmatic contract: branch on error, and use details only for human-readable context (it may be absent on auth and permission errors).
Documentation
- API reference and guides: https://teambattles.gg/docs/developers
- SDKs overview: https://teambattles.gg/docs/sdks
- This SDK: https://teambattles.gg/docs/sdks/ruby
- Authentication: https://teambattles.gg/docs/developers/authentication
License
MIT