Discover/Thingiverse API
live

Thingiverse APIthingiverse.com

Search Thingiverse models, fetch detailed specs, files, tags, and creator info, or aggregate tag trends across up to 50 models with three focused endpoints.

Endpoint health
verified 18h ago
search_models
get_model_details
aggregate_tag_counts
3/3 passing latest checkself-healing
Endpoints
3
Updated
26d ago

What is the Thingiverse API?

This API exposes three endpoints for accessing Thingiverse's catalog of 3D printable models: search by keyword with sort and pagination controls, retrieve per-model details including files, tags, license, and creator, and aggregate tag usage counts across up to 50 models in a single call. The get_model_details endpoint alone returns over 10 structured fields per model, covering everything from file lists to like counts.

Try it
Page number for pagination.
Sort order for results.
Search query keywords.
Number of results per page.
api.parse.bot/scraper/3a7b9fcd-6b1a-4e4c-9ed0-b9698b260adf/<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/3a7b9fcd-6b1a-4e4c-9ed0-b9698b260adf/search_models?page=1&sort=popular&query=drone&per_page=5' \
  -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 thingiverse-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.thingiverse_scraper_api import Thingiverse, Sort, ModelSummary, Model, TagAggregation

client = Thingiverse()

# Search for popular 3D printable drone models
for summary in client.modelsummaries.search(query="drone", sort=Sort.POPULAR, limit=5):
    print(summary.name, summary.like_count, summary.creator.name)

    # Drill into full details for each model
    model = summary.details()
    print(model.description[:80], model.file_count, model.license)
    for tag in model.tags:
        print(tag.name, tag.url)

# Aggregate tag usage across search results
agg = client.modelsummaries.aggregate_tags(query="drone", limit=10)
print(agg.models_processed)
for tc in agg.tag_aggregations:
    print(tc.tag, tc.count)
All endpoints · 3 totalmissing one? ·

Full-text search over Thingiverse 3D model catalog. Results are paginated and sortable. Each hit includes basic model metadata (name, creator, engagement counts, thumbnail). For full details (description, tags, files), call the details navigation on a returned summary.

Input
ParamTypeDescription
pageintegerPage number for pagination.
sortstringSort order for results.
queryrequiredstringSearch query keywords.
per_pageintegerNumber of results per page.
Response
{
  "type": "object",
  "fields": {
    "hits": "array of model summary objects with id, name, public_url, created_at, thumbnail, creator, like_count, collect_count, comment_count",
    "total": "integer total number of matching results"
  },
  "sample": {
    "data": {
      "hits": [
        {
          "id": 763622,
          "name": "3DBenchy",
          "creator": {
            "id": 1336,
            "name": "CreativeTools",
            "public_url": "https://www.thingiverse.com/CreativeTools"
          },
          "thumbnail": "https://cdn.thingiverse.com/assets/ee/dc/9a/fb/74/benchy.JPG",
          "created_at": "2015-04-09T12:57:28+00:00",
          "like_count": 90789,
          "public_url": "https://www.thingiverse.com/thing:763622",
          "is_featured": true,
          "collect_count": 138060,
          "comment_count": 993
        }
      ],
      "total": 10000
    },
    "status": "success"
  }
}

About the Thingiverse API

Search and Discovery

The search_models endpoint accepts a required query string and optional parameters for page, per_page, and sort. The sort field accepts four values — popular, relevant, featured, and newest — giving you control over ranking. Each result object in the hits array includes the model's id, name, public_url, thumbnail, creation timestamp, creator details, like_count, collect_count, and comment_count. The total field in the response tells you how many models matched, which you can use to drive pagination logic.

Model Details

The get_model_details endpoint takes a numeric thing_id and returns a structured record for that model. Response fields include tags (array of objects with name and url), files (array with per-file name and url), license, categories, file_count, like_count, created_at, and creator with their public profile URL. This is the right endpoint when you need to inspect a model's actual downloadable files or verify its license before use.

Tag Aggregation

The aggregate_tag_counts endpoint is purpose-built for trend analysis. It processes up to 50 models (controlled by the limit parameter), optionally filtered to a specific query. It returns a tag_aggregations array sorted by count descending, alongside models_processed so you know the sample size. If query is omitted, it aggregates across popular models, making it useful for identifying community-wide printing trends without manual iteration.

Reliability & maintenanceVerified

The Thingiverse API is a managed, monitored endpoint for thingiverse.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when thingiverse.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 thingiverse.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
18h ago
Latest check
3/3 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 3D printing catalog app that searches Thingiverse by keyword and displays thumbnails and like counts from search_models.
  • Verify the license of a model before commercial use by calling get_model_details and reading the license field.
  • Download all files for a specific model by iterating the files array returned by get_model_details.
  • Identify trending maker topics by running aggregate_tag_counts without a query and sorting by count.
  • Track how many Thingiverse models exist for a niche category by checking the total field from search_models.
  • Build a creator profile page by extracting creator.name and creator.public_url from model detail responses.
  • Analyze which tags dominate a keyword niche (e.g. 'miniatures') by passing a query to aggregate_tag_counts.
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 Thingiverse have an official developer API?+
Yes. Thingiverse offers an official API documented at https://www.thingiverse.com/developers. It requires registration for an API key and covers things, users, collections, and file downloads. The Parse API provides structured access to model search and detail data without requiring you to manage OAuth credentials.
What does `get_model_details` return beyond what `search_models` already includes?+
search_models returns a summary per model: id, name, thumbnail, like_count, collect_count, comment_count, and basic creator info. get_model_details adds tags, files (with individual download URLs), license, categories, file_count, and created_at. If you need to know what files are attached to a model or what license it carries, you need get_model_details.
Does `aggregate_tag_counts` cover all models on Thingiverse?+
No — it processes at most 50 models per call, controlled by the limit parameter. The models_processed field in the response tells you the actual sample size. Results reflect a sample, not a full-corpus count. For a narrow query, 50 models may be most or all of the results; for broad queries it is a sample of the top results.
Can I retrieve a model's remix history or see which designs it was derived from?+
Not currently. The API covers model metadata, file listings, tags, and creator info, but remix relationships and derivative lineage are not exposed in any of the three endpoints. You can fork this API on Parse and revise it to add an endpoint that fetches remix data for a given thing_id.
Are there any fields that require a logged-in Thingiverse account to access?+
The three endpoints return publicly visible model data — names, files, tags, like counts, and creator profiles. Private or unpublished models are not accessible, and user-specific data such as a collector's personal library or private makes are not covered. The API surfaces only content that is publicly listed on Thingiverse.
Page content last updated . Spec covers 3 endpoints from thingiverse.com.
Related APIs in MarketplaceSee all →
makerworld.com API
Search and discover 3D models on MakerWorld.com. Browse paginated listings or retrieve comprehensive details about specific designs, including titles, preview images, tags, creator info, print profiles, and filament requirements.
cults3d.com API
Search and discover 3D printable models across Cults3D's marketplace, filtering by categories and sorting by popularity metrics like downloads, views, and likes. Access detailed information about specific creations, designer profiles, and engagement data to find the perfect models for your printing projects.
pinshape.com API
Search and retrieve 3D printable models, view detailed information about designs including comments and print history, and explore user profiles, collections, and liked models from Pinshape.com. Access comprehensive metadata about 3D models along with community interactions to discover and manage printable designs.
myminifactory.com API
Search and browse 3D models on MyMiniFactory, discover trending designs, explore user collections and categories, and read community comments. Find exactly what you need by searching objects, viewing user profiles, and checking out popular content in real-time.
sketchfab.com API
Search and browse 3D models on Sketchfab, including filtering by category, license, animation, and downloadability. Retrieve detailed model metadata, creator profiles, collections, thumbnails, tags, and viewer configuration options.
grabcad.com API
Search and browse millions of 3D CAD models from the GrabCAD Community Library. Filter by CAD software, sort order, and keyword to find the models you need. Retrieve detailed model information and file listings for any model in the library.
turbosquid.com API
Search and explore millions of 3D models and textures from TurboSquid's marketplace, viewing detailed specifications, pricing, and availability across different categories. Discover free models, filter by your needs, and access comprehensive product information to find the perfect assets for your projects.
furnimesh.com API
Browse and download free 3D furniture models from FurniMesh's extensive library by searching for specific items or exploring curated collections. Access detailed model information and instantly integrate high-quality furniture assets into your design projects.