Environments
Ruby provides two separate environments: a test environment for development and integration testing, and a production environment for live traffic.
Base URLs
| Environment | Base URL |
|---|---|
| Test | https://api-test.ruby-gaming.com |
| Production | https://api.ruby-gaming.com |
All API paths are the same in both environments. For example:
Test: https://api-test.ruby-gaming.com/api/brand/create
Production: https://api.ruby-gaming.com/api/brand/create
Your team_api_key and team_api_secret are issued per environment. Test credentials cannot be used in production and vice versa. Contact your Ruby account manager to obtain production credentials once your integration testing is complete.
HTTPS / TLS
HTTPS is required for all API calls. Plain HTTP connections are not accepted. Ruby enforces TLS on all endpoints.
Ensure your HTTP client:
- Validates the server's TLS certificate (do not disable certificate verification)
- Supports TLS 1.2 or higher
Ports
The API is served behind a reverse proxy. No port number is needed in the URL — use the standard HTTPS port (443) implicitly via the base URLs above.
Recommended Client Timeout
Configure your HTTP client with a 30-second timeout for all API requests. The vast majority of requests complete well within this window; the timeout guards against hung connections in edge cases.
Rate Limiting
Rate limiting policy is to be announced.
If your integration requires high request volumes, contact your Ruby account manager to discuss capacity planning before going live.
Health Check
A public health endpoint is available to verify that the API is reachable:
GET /health
This endpoint does not require authentication and returns HTTP 200 when the service is operational. You can use it to probe connectivity from your environment without consuming any API quota.
Verifying Your Setup
Once you have your test credentials and have confirmed HTTPS connectivity, run a quick verification by signing and sending the following request:
BASE_URL="https://api-test.ruby-gaming.com"
TIMESTAMP=$(date +%s)
SIGNATURE=$(echo -n "${TIMESTAMP}GET/api/brand/list" \
| openssl dgst -sha256 -hmac "${TEAM_API_SECRET}" -hex | awk '{print $2}')
curl -s "${BASE_URL}/api/brand/list" \
-H "X-Team-Key: ${TEAM_API_KEY}" \
-H "X-Team-Timestamp: ${TIMESTAMP}" \
-H "X-Team-Signature: ${SIGNATURE}"
A 200 response with a paginated brand list confirms that your credentials, signing logic, and network connectivity are all working correctly.