API Status
Online
Online

API DOCUMENTATION

Integrate DOTA 2 Shader Database data into your own tools. Our REST API provides read-only access to shader, gem, and market data.

1. Overview

The API is organized around REST principles. It returns JSON-encoded responses and uses standard HTTP response codes. All endpoints are read-only and require an API key for authentication.

  • Base URL: https://api.renderdota.pro/v1
  • All responses are JSON.
  • Rate limit: 60 requests per minute per key.
  • Read-only — no write operations supported.

2. Authentication

Every request must include your API key in the X-API-Key header. Keys are tied to your Steam account and can be regenerated at any time.

GET /v1/items HTTP/1.1 Host: api.renderdota.pro X-API-Key: your_api_key_here

Need an API Key?

Sign in with Steam to generate your personal API key.

3. Endpoints

Below is a list of available endpoints. All are GET requests and return JSON.

GET /v1/items

Returns a paginated list of all indexed cosmetic items.

Parameter Type Description
page integer Page number (default: 1)
limit integer Items per page, max 100 (default: 25)
hero string Filter by hero name (e.g. "terrorblade")
GET /v1/items/{id}

Returns detailed information about a single item, including shader and material phase data.

GET /v1/shaders

Returns the full list of known shader and material phase combinations.

GET /v1/gems

Returns all Prismatic and Ethereal gems with their color codes and effect IDs.

GET /v1/market/{id}

Returns current market statistics for a specific item.

4. Example Response

Here is an example response from /v1/items/12345:

{ "id": 12345, "name": "Ethereal Flames Pink War Dog", "hero": "courier", "rarity": "immortal", "shader": { "phase": "ethereal_flames", "color_code": "#FF69B4", "effect_id": 42 }, "market": { "price_usd": 1249.99, "volume_24h": 3 } }

5. Error Codes

The API uses standard HTTP response codes to indicate success or failure.

Code Meaning
200 Success
400 Bad request — invalid parameters
401 Unauthorized — missing or invalid API key
404 Resource not found
429 Rate limit exceeded
500 Internal server error

6. Rate Limits & Fair Use

To keep the API fast and available for everyone, the following limits apply:

  • 60 requests per minute per API key.
  • Burst limit: 10 requests per second.
  • Responses are cached for 60 seconds where applicable.
  • Excessive or abusive usage may result in temporary suspension.

7. Support

If you have questions about the API, need a higher rate limit, or want to report an issue, reach out to us.

  • Email: [email protected]
  • Discord: join our community for live help.
  • Documentation updates are posted on our main page.
API version 1.0 — Last updated: January 2025