Skip to main content

Games API Introduction

Welcome to the Send v5 Games API documentation.

Overview

The Games API provides RESTful endpoints for managing wheel game resources including profiles, prizes, configurations, instances, and shareable links.

Architecture

This API follows Clean Architecture principles with:
  • Domain Layer: Pure business logic (entities + use cases)
  • Infrastructure Layer: Database adapters (Nile SDK)
  • Presentation Layer: HTTP handlers (Rust + Axum)

Base URL

Production:  https://api.{your-domain}/games/wheel
Staging:     https://api.staging.{your-domain}/games/wheel

Authentication

All API requests require authentication via: Header: x-tenant-id: <your-tenant-uuid> Multi-tenant isolation is enforced at the database level using Nile SDK.

Rate Limiting

  • Rate Limit: 1000 requests per hour per tenant
  • Burst: 100 requests per minute

Response Format

All responses follow this format:
{
  "success": true,
  "data": { ... },
  "pagination": {
    "page": 1,
    "limit": 20,
    "total": 100,
    "totalPages": 5
  }
}

Error Handling

Error responses include:
{
  "success": false,
  "error": {
    "code": "validation_error",
    "message": "Invalid request parameters",
    "details": "..."
  }
}

Resources

  • Profiles: Wheel configuration profiles
  • Prizes: Prize definitions with images
  • Configs: Content-addressed configurations (deduplicated by hash)
  • Instances: Active game instances
  • Links: Shareable links with slug routing