Discover/GregMat API
live

GregMat APIgregmat.com

Access GregMat GRE prep data via API: study plans, video courses, recorded classes, and practice problems with filters for difficulty and question type.

This API takes change requests — .
Endpoint health
verified 3d ago
get_course
get_study_plan
list_recent_classes
list_study_plans
list_problems
5/5 passing latest checkself-healing
Endpoints
5
Updated
1mo ago

What is the GregMat API?

The GregMat API exposes 5 endpoints covering GRE preparation content from gregmat.com, including structured study plans, video courses, recorded class sessions, and a filterable practice problem bank. The list_problems endpoint alone surfaces per-problem metadata such as acceptance rate, difficulty, question type, and whether a solution video exists, making it straightforward to build custom study tools or problem-set generators on top of GregMat's content library.

Try it
Maximum number of study plans to return per page.
Number of results to skip for pagination.
api.parse.bot/scraper/2b9de531-27a7-4cc7-a610-3dcaae141af4/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/2b9de531-27a7-4cc7-a610-3dcaae141af4/list_study_plans?limit=5&offset=0' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

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 gregmat-com-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.

from parse_apis.gregmat_gre_prep_api import GregMat, StudyPlanSummary, Category, Difficulty

client = GregMat()

# List study plans and get details for the first one
for plan_summary in client.studyplans.list(limit=3):
    print(plan_summary.title, plan_summary.slug, plan_summary.plus_only)

# Fetch full detail of a study plan
plan = client.studyplans.get(slug="week-1-of-the-one-month-study-plan")
for unit in plan.units:
    print(unit.id, unit.title, unit.plus_only)

# Navigate from summary to detail
summary = client.studyplansummary(slug="week-1-of-the-one-month-study-plan")
full_plan = summary.details()
print(full_plan.title, full_plan.description)

# Get a video course
course = client.courses.get(slug="must-see-videos")
print(course.title, course.ongoing)
for group in course.classgroups:
    print(group.title, group.order)
    for cls in group.classes:
        print(cls.title, cls.class_type, cls.plus_only)

# List recent classes
for recent in client.recentclasses.list(limit=5):
    print(recent.title, recent.class_type, recent.starts_at)

# Search problems with filters
for problem in client.problems.list(category=Category.QUANT, difficulty=Difficulty.HARD, limit=5):
    print(problem.title, problem.acceptance, problem.has_solution_video, problem.first_tlc)
All endpoints · 5 totalmissing one? ·

List all available GRE study plans with pagination. Returns plan titles, slugs, and whether they require a Plus subscription. Each plan can be fetched in detail via get_study_plan.

Input
ParamTypeDescription
limitintegerMaximum number of study plans to return per page.
offsetintegerNumber of results to skip for pagination.
Response
{
  "type": "object",
  "fields": {
    "count": "integer total of available study plans",
    "results": "array of study plan summaries"
  },
  "sample": {
    "data": {
      "count": 37,
      "results": [
        {
          "img": null,
          "slug": "week-1-of-the-one-month-study-plan",
          "title": "Week 1 of the One-Month Study Plan",
          "plus_only": false
        }
      ]
    },
    "status": "success"
  }
}

About the GregMat API

Study Plans and Course Structure

The list_study_plans endpoint returns paginated summaries of all available GRE study plans, each including a title, slug, and a plus_only boolean indicating whether a GregMat Plus subscription is required. Fetching a specific plan via get_study_plan (using its slug) returns the full unit list, where each unit carries an id, title, HTML description with embedded links to videos and problems, and its own plus_only flag — units can be gated independently of the parent plan.

Video Courses and Recorded Classes

get_course retrieves a full course by slug (for example, must-see-videos) and returns a nested structure of classgroups, each containing an array of individual class entries with title, slug, description, image, and type. The ongoing boolean field signals whether the course is still receiving new content. For recent live sessions, list_recent_classes provides paginated results ordered newest-first, with each record including starts_at, ends_at, class_type, associated courses, and a video reference.

Practice Problem Bank

list_problems is the most filter-rich endpoint. It accepts category, difficulty, question_type (such as Quantitative Comparison, Multiple Choice, or Numeric Entry), a numeric tag ID (e.g., 1 for Triangles, 2 for Fractions), and a free-text query. Each result in the paginated response includes id, title, slug, type, difficulty, dynamic_difficulty, acceptance rate, has_solution_video, and likes. Pagination across all list endpoints uses standard limit and offset parameters, and each list response includes a top-level count of total matching records.

Reliability & maintenanceVerified

The GregMat API is a managed, monitored endpoint for gregmat.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when gregmat.com 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 gregmat.com 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.

Last verified
3d ago
Latest check
5/5 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Build a custom GRE study scheduler by pulling unit sequences from get_study_plan and tracking progress against Plus-gated content
  • Generate adaptive practice sets filtered by difficulty and question_type using list_problems acceptance-rate data
  • Surface problems by math topic using the tag filter (e.g., triangles, fractions) to build topic-specific drill tools
  • Create a course browser that shows which GregMat courses are still actively updated via the ongoing field from get_course
  • Build a recent-classes feed using list_recent_classes with starts_at and ends_at timestamps for scheduling or review reminders
  • Flag problems with available solution videos using has_solution_video to guide learners toward explained worked examples
  • Identify which study plan units require Plus access via the per-unit plus_only field before surfacing content to free-tier users
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 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.

Frequently asked questions
Does GregMat have an official developer API?+
GregMat does not publish an official public developer API or documented REST endpoints for third-party use. This Parse API provides structured access to GregMat's preparation content.
What does `list_problems` return, and how can I filter it?+
list_problems returns a paginated array of GRE practice problems. Each object includes id, title, slug, difficulty, dynamic_difficulty, acceptance rate, has_solution_video, and likes. You can filter by category, difficulty, question_type (e.g., 'Quantitative Comparison', 'Multiple Choice', 'Numeric Entry'), a numeric tag ID for math topics, or a free-text query against problem titles.
Can I retrieve the full text or answer choices for individual practice problems?+
Not currently. list_problems returns listing-level metadata — title, difficulty, acceptance rate, question type, and whether a solution video exists — but not the full problem body or answer options. You can fork this API on Parse and revise it to add an endpoint that fetches individual problem detail pages.
How does Plus-gating appear in study plan responses?+
get_study_plan returns a top-level plus_only boolean for the plan itself, but individual units within the units array each carry their own plus_only flag. A plan that is not Plus-gated overall may still contain individual units that are, so checking both levels is necessary to accurately represent access requirements.
Does the API expose GregMat user account data, forum posts, or flashcard decks?+
Not currently. The API covers study plans, video courses, recorded classes, and practice problems. User accounts, community forum content, and any flashcard tools are not included. You can fork this API on Parse and revise it to add endpoints covering those content areas.
Page content last updated . Spec covers 5 endpoints from gregmat.com.
Related APIs in EducationSee all →
arxiv.org API
Search and discover academic research papers on arXiv using keywords, authors, titles, categories, and dates, then access detailed metadata for any paper. Browse the complete arXiv category taxonomy to explore research across different scientific disciplines.
zenodo.org API
Search and retrieve research records, files, versions, and community data from Zenodo's open science repository. Access detailed information about academic publications, datasets, and research outputs, including file listings, version history, and community collections all in one place.
openalex.org API
Search and retrieve millions of academic papers, articles, and books from OpenAlex's comprehensive global research catalog to find scholarly works by topic, author, or citation. Discover detailed information about research publications including metadata, abstracts, and citation counts to stay current with academic literature in your field.
ieeexplore.ieee.org API
Search for scientific papers and retrieve their metadata, abstracts, references, and citations from IEEE Xplore's collection of journals and conferences. Look up author profiles, browse journals, and access paper details and full text sections all programmatically.
dictionary.cambridge.org API
Look up word definitions, pronunciations, translations, synonyms, and example sentences from Cambridge Dictionary. Search and browse thousands of words, get daily word recommendations, and access specialized business or American English dictionaries.
niche.com API
Search and retrieve data on K-12 schools and colleges from Niche.com, including rankings, report card grades, stats, and user reviews.
wellcomecollection.org API
Access data from wellcomecollection.org.
libgen.gl API
Search for books and retrieve detailed metadata including file information, edition details, and bibliographic data from Library Genesis. Access comprehensive book information like download links, file formats, and publication details all in one place.