Devpost APIdevpost.com ↗
Search and filter Devpost hackathons by status, keyword, prize amount, or deadline. Returns titles, dates, prize totals, themes, and registration counts.
What is the Devpost API?
The Devpost API exposes 1 endpoint — search_hackathons — that returns structured data on hackathon listings from Devpost.com, covering at least 7 response fields per hackathon including title, prize amount, submission dates, and registration count. You can filter by open, ended, or upcoming status, pass a keyword query, and sort by prize amount, submission deadline, or recency, all with paginated results.
curl -X GET 'https://api.parse.bot/scraper/acda262a-d000-4dc9-b208-2dbdda094d00/search_hackathons?limit=5&search=AI&status=open&page=1&order_by=submission-deadline' \ -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 devpost-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.devpost_hackathons_api import Devpost, HackathonStatus, Sort
client = Devpost()
# Search for open hackathons sorted by prize amount
for hackathon in client.hackathons.search(status=HackathonStatus.OPEN, order_by=Sort.PRIZE_AMOUNT, limit=5):
print(hackathon.title, hackathon.prize_amount, hackathon.registrations_count, hackathon.organization_name)
Search and list hackathons with optional filters for status, search query, sorting, and pagination. Returns hackathon details including title, submission dates, prize amount, themes, and registration count. Each page from the upstream API returns up to 9 results; the limit parameter controls how many total results to accumulate across pages.
| Param | Type | Description |
|---|---|---|
| page | integer | Page number (1-indexed). |
| limit | integer | Maximum number of results to return. |
| search | string | Search query to filter hackathons by keyword. Omitting returns all hackathons. |
| status | string | Filter by hackathon status. Accepted values: 'open', 'ended', 'upcoming'. Omitting returns all statuses. |
| order_by | string | Sort order for results. Accepted values: 'submission-deadline', 'prize-amount', 'recently-added'. Omitting uses default relevance ordering. |
{
"type": "object",
"fields": {
"page": "integer - current page number",
"hackathons": "array of hackathon objects with id, title, url, submission_period_dates, time_left_to_submission, prize_amount, registrations_count, themes, open_state, displayed_location, organization_name, winners_announced, featured, invite_only, thumbnail_url",
"total_count": "integer - total number of matching hackathons",
"results_returned": "integer - number of results in this response"
},
"sample": {
"data": {
"page": 1,
"hackathons": [
{
"id": 29711,
"url": "https://rapid-agent.devpost.com/",
"title": "Google Cloud Rapid Agent Hackathon",
"themes": [
"Databases",
"Machine Learning/AI",
"Open Ended"
],
"featured": false,
"open_state": "open",
"invite_only": false,
"prize_amount": "$60,000",
"thumbnail_url": "//d112y698adiu2z.cloudfront.net/photos/production/challenge_thumbnails/004/595/623/datas/medium_square.jpg",
"organization_name": "Google",
"winners_announced": false,
"displayed_location": "Online",
"registrations_count": 14306,
"submission_period_dates": "May 05 - Jun 11, 2026",
"time_left_to_submission": "about 22 hours left"
}
],
"total_count": 71,
"results_returned": 1
},
"status": "success"
}
}About the Devpost API
What the API Returns
The search_hackathons endpoint returns an array of hackathon objects alongside pagination metadata: page, total_count, and results_returned. Each hackathon object includes id, title, url, submission_period_dates, time_left_to_submission, prize_amount, and registrations_count. This gives you enough to build a filtered directory, set up deadline alerts, or rank competitions by prize pool.
Filtering and Sorting
The status parameter accepts open, ended, or upcoming, letting you narrow results to active competitions or historical ones. The search parameter filters by keyword — useful for targeting hackathons around a specific technology or theme. The order_by parameter supports three values: prize-amount, submission-deadline, and recently-added. Pagination is controlled via page (1-indexed) and limit, so large result sets can be fetched incrementally.
Pagination and Coverage
The response always includes total_count, which reflects the full number of matching hackathons before pagination is applied, and results_returned, which tells you how many records are in the current page. This makes it straightforward to implement cursor-style iteration or to estimate how many pages remain for a given query. Devpost lists hackathons globally, so results span multiple regions and sponsors without geographic restriction.
The Devpost API is a managed, monitored endpoint for devpost.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when devpost.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 devpost.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.
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 hackathon calendar app that surfaces upcoming competitions sorted by submission deadline.
- Track prize pools across open hackathons to identify the highest-value opportunities in a given week.
- Monitor registration counts on specific hackathons to gauge community interest over time.
- Filter ended hackathons by keyword to research past competitions in a particular tech domain.
- Aggregate Devpost hackathon data into a Slack bot that alerts a team when new open competitions are posted.
- Create a dashboard ranking active hackathons by prize amount for a developer community newsletter.
- Analyze submission period dates across ended hackathons to understand typical competition durations.
| 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 Devpost have an official developer API?+
What does the search_hackathons endpoint return for each hackathon?+
id, title, url, submission_period_dates, time_left_to_submission, prize_amount, and registrations_count. The status filter controls whether you see open, upcoming, or ended hackathons, and order_by determines sort order.Does the API return individual hackathon project submissions or participant data?+
Can I retrieve hackathon details by a specific ID rather than searching?+
How fresh is the hackathon data, and does it reflect status changes promptly?+
time_left_to_submission are point-in-time values. If a hackathon transitions from upcoming to open between requests, re-querying with the appropriate status filter will reflect the updated listing.