Trivia API
Pull random trivia questions with answers, filtered by topic and difficulty.
Request Headers
| Name | Required | Description |
|---|---|---|
X-RapidAPI-Key | required | Your RapidAPI key. Get one free. |
X-RapidAPI-Host | required | trivia.p.rapidapi.com |
Endpoints
/v1/trivia Get random trivia questions, optionally filtered by category and difficulty
Parameters
| Name | Type | Required | Default | Constraints |
|---|---|---|---|---|
category | string | optional | — | — |
difficulty | string | optional | — | matches easy|medium|hard |
limit | integer | optional | 1 | 1-10 |
Code Examples
curl --request GET \
--url 'https://trivia.p.rapidapi.com/v1/trivia?category=example&difficulty=example' \
--header 'x-rapidapi-key: YOUR_API_KEY' \
--header 'x-rapidapi-host: trivia.p.rapidapi.com' const url = "https://trivia.p.rapidapi.com/v1/trivia?category=example&difficulty=example";
const options = {
method: "GET",
headers: {
"x-rapidapi-key": "YOUR_API_KEY",
"x-rapidapi-host": "trivia.p.rapidapi.com"
}
};
const response = await fetch(url, options);
const data = await response.json();
console.log(data); import requests
url = "https://trivia.p.rapidapi.com/v1/trivia"
querystring = {"category": "example", "difficulty": "example"}
headers = {
"x-rapidapi-key": "YOUR_API_KEY",
"x-rapidapi-host": "trivia.p.rapidapi.com"
}
response = requests.get(url, headers=headers, params=querystring)
print(response.json()) /v1/trivia/categories List all trivia categories available in the dataset, sorted alphabetically.
Code Examples
curl --request GET \
--url 'https://trivia.p.rapidapi.com/v1/trivia/categories' \
--header 'x-rapidapi-key: YOUR_API_KEY' \
--header 'x-rapidapi-host: trivia.p.rapidapi.com' const url = "https://trivia.p.rapidapi.com/v1/trivia/categories";
const options = {
method: "GET",
headers: {
"x-rapidapi-key": "YOUR_API_KEY",
"x-rapidapi-host": "trivia.p.rapidapi.com"
}
};
const response = await fetch(url, options);
const data = await response.json();
console.log(data); import requests
url = "https://trivia.p.rapidapi.com/v1/trivia/categories"
headers = {
"x-rapidapi-key": "YOUR_API_KEY",
"x-rapidapi-host": "trivia.p.rapidapi.com"
}
response = requests.get(url, headers=headers)
print(response.json()) /v1/trivia/difficulties List all difficulty levels available in the trivia dataset, sorted alphabetically.
Code Examples
curl --request GET \
--url 'https://trivia.p.rapidapi.com/v1/trivia/difficulties' \
--header 'x-rapidapi-key: YOUR_API_KEY' \
--header 'x-rapidapi-host: trivia.p.rapidapi.com' const url = "https://trivia.p.rapidapi.com/v1/trivia/difficulties";
const options = {
method: "GET",
headers: {
"x-rapidapi-key": "YOUR_API_KEY",
"x-rapidapi-host": "trivia.p.rapidapi.com"
}
};
const response = await fetch(url, options);
const data = await response.json();
console.log(data); import requests
url = "https://trivia.p.rapidapi.com/v1/trivia/difficulties"
headers = {
"x-rapidapi-key": "YOUR_API_KEY",
"x-rapidapi-host": "trivia.p.rapidapi.com"
}
response = requests.get(url, headers=headers)
print(response.json()) Interactive Example
$ GET /v1/trivia?difficulty=easy&limit=1
{"data":[{"question":"What is the largest planet in our solar system?","answer":"Jupiter","category":"Science","difficulty":"easy"}],"meta":{"total":1,"limit":1,"offset":0}} Subscribe & License
Access this API with commercial-ready tiers on RapidAPI. Flexible plans designed for side-projects, startups, and high-volume production architectures.
Developer Support
Need help integrating or have a custom endpoint request? Our engineering team is here to assist with authentication, payload schemas, and high-frequency rate limit increases.
System Performance
Monitored 24/7 with a 99.9% uptime SLA. Built atop cloud-native microservices with globally distributed edge caching to ensure ultra-low latency response times.