QuantGuide APIquantguide.io ↗
Access QuantGuide.io interview questions, company filters, playlists, leaderboards, and discussion posts via API. Filter by topic, difficulty, and company.
What is the QuantGuide API?
This API exposes 6 endpoints covering QuantGuide.io's full question bank, company statistics, curated playlists, the Quantify leaderboard, and community discussion posts. The get_questions_list endpoint returns question objects with fields including id, title, difficulty, topic, isPremium, companies, tags, and urlEnding, and accepts filters for topic, company, difficulty, and keyword search — making it straightforward to build tooling on top of QuantGuide's quant finance interview content.
curl -X GET 'https://api.parse.bot/scraper/bb2e79bc-5de9-4938-bf82-be77608b24c4/get_questions_list?query=poker&topic=probability&company=SIG&difficulty=easy' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace quantguide-io-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
"""Walkthrough: QuantGuide SDK — browse interview questions, drill into details, explore discussions."""
from parse_apis.quantguide_api import QuantGuide, Difficulty, Topic, DiscussionCategory, QuestionNotFound
client = QuantGuide()
# Search for hard probability questions — limit caps total items fetched
for q in client.questionsummaries.search(topic=Topic.PROBABILITY, difficulty=Difficulty.HARD, limit=3):
print(q.title, q.urlEnding)
# Drill into one question's full detail via the navigation op
summary = client.questionsummaries.search(company="Jane Street", limit=1).first()
if summary:
detail = summary.details()
print(detail.title, detail.difficulty, detail.prompt[:80])
# Direct fetch by slug when you already know it
try:
question = client.questions.get(slug="place-or-take")
print(question.title, question.topic, question.isPremium)
except QuestionNotFound as exc:
print(f"Question not found: {exc.slug}")
# Browse companies sorted by question count
for company in client.companies.list(limit=5):
print(company.name, company.count)
# Check mental math leaderboard
for entry in client.leaderboardentries.list(limit=3):
print(entry.rank, entry.username, entry.score)
# Explore interview experience discussions
for post in client.discussionposts.list(category=DiscussionCategory.INTERVIEW_EXPERIENCE, limit=3):
print(post.title, post.upvotes, post.tags)
print("exercised: questionsummaries.search / .details / questions.get / companies.list / leaderboardentries.list / discussionposts.list")
Retrieve the full list of quantitative finance interview questions. Supports filtering by topic, difficulty, company, and keyword search. Returns all matching questions in a single response with counts. The full question list (1000+) is loaded and filtered client-side.
| Param | Type | Description |
|---|---|---|
| query | string | Search keyword to filter questions by title |
| topic | string | Filter by topic slug |
| company | string | Filter by company name (e.g. SIG, Jane Street, Citadel) |
| difficulty | string | Filter by difficulty level |
{
"type": "object",
"fields": {
"questions": "array of question summary objects with id, title, difficulty, topic, isPremium, companies, tags, urlEnding",
"total_count": "integer total number of questions in the database",
"filtered_count": "integer number of questions after applying filters"
},
"sample": {
"data": {
"questions": [
{
"id": "pjSCKiq39SvESirmwFq4",
"tags": [
{
"tag": "Games"
},
{
"tag": "Expected Value"
}
],
"title": "Place or Take",
"topic": "probability",
"isAIType": null,
"companies": [
{
"company": "Jane Street"
}
],
"isPremium": false,
"urlEnding": "place-or-take",
"difficulty": "hard"
}
],
"total_count": 1211,
"filtered_count": 733
},
"status": "success"
}
}About the QuantGuide API
Question Data
get_questions_list returns every question on QuantGuide with filtered_count and total_count integers alongside the matched array. You can narrow results by passing a topic slug (probability, brainteasers, statistics, pure math, finance), a company name (Jane Street, Citadel, SIG, Five Rings, Goldman Sachs), a difficulty level (easy, medium, hard), or a free-text query. Each question object carries an isPremium boolean so you can separate freely available content from gated material.
get_question_detail accepts a slug (the urlEnding value from the list endpoint) and returns the full question prompt with LaTeX notation intact, plus the topic, difficulty, companies array, and tags array for that item. This is the endpoint to use when you need renderable math content.
Company and Playlist Data
list_companies returns all companies found across the question bank as an array of {name, count} objects sorted by question count descending — useful for ranking which firms appear most frequently in the question set. get_playlists returns curated collections from QuantGuide's questions page, each with a name, description, and url, reflecting the themed study sets the platform maintains.
Leaderboard and Discussions
get_leaderboard returns ranked entries for QuantGuide's Quantify mental math simulator: each entry has a rank, username, and score. get_discussion_posts accepts a category parameter (InterviewExperience, InterviewQuestions, Compensation, InterviewPreparation) and returns posts with title, slug, upvotes, comments, tags, and url — covering the forum side of the platform alongside the question bank.
The QuantGuide API is a managed, monitored endpoint for quantguide.io — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when quantguide.io changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official quantguide.io API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Build a flashcard or study app filtered to a specific company like Jane Street or Citadel using the
companyparameter inget_questions_list - Track which firms appear most often in quant interview prep by querying
list_companiesfor name and count data - Render full question prompts with LaTeX math notation in a custom UI using
get_question_detail - Display or analyze Quantify leaderboard rankings by fetching
get_leaderboardentries with rank, username, and score - Aggregate community discussion posts by category (e.g. InterviewExperience or Compensation) from
get_discussion_posts - Identify premium-gated questions before building a free study guide by filtering on the
isPremiumboolean in question results - Surface curated study playlists in a learning tool using the
name,description, andurlfields fromget_playlists
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does QuantGuide.io have an official developer API?+
What does get_question_detail return that get_questions_list does not?+
get_question_detail returns the full prompt field containing the question text with LaTeX notation preserved, which is absent from the list endpoint. The list endpoint is designed for browsing and filtering across all questions, while the detail endpoint is for retrieving renderable content for a single question by its slug.Does the API expose user account data, submission history, or personal progress?+
Can I filter discussion posts by more than one category at a time?+
get_discussion_posts accepts a single category value per request. The valid values are InterviewExperience, InterviewQuestions, Compensation, and InterviewPreparation. To aggregate across multiple categories, you would make one request per category. You can fork this API on Parse and revise it to merge multi-category results in a single response.Are solutions or answer explanations included in the question detail response?+
get_question_detail response returns the question prompt, metadata, tags, and company associations. Solution content is not currently exposed. You can fork this API on Parse and revise it to add an endpoint that retrieves solution or editorial content for questions where it is publicly accessible.