# Hackathon Calendar Tracker — Devpost Upcoming & Open Hackathons (`gochujang/hackathon-calendar-tracker`) Actor

Scrape upcoming and open hackathons from Devpost. Filter by status, prize size, theme, or keyword. Returns title, dates, prizes, location, tags, and registration link. $0.005/hackathon.

- **URL**: https://apify.com/gochujang/hackathon-calendar-tracker.md
- **Developed by:** [Hojun Lee](https://apify.com/gochujang) (community)
- **Categories:** Developer tools
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

Pay per usage

This Actor is paid per platform usage. The Actor is free to use, and you only pay for the Apify platform usage, which gets cheaper the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-usage

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

## Hackathon Calendar Tracker — Devpost Scraper

> **Hackathon calendar** tracker and **crypto hackathon** scraper from Devpost — the world's largest **developer events** platform. Filter by prize size, keyword, date, or online-only. Perfect for developers hunting competitions, recruiters scouting talent, and AI/research pipelines. **$0.005/hackathon.**

***

### ⚡ Quick start

```json
{
  "status": ["open", "upcoming"],
  "orderBy": "deadline",
  "limit": 100
}
```

Returns a full hackathon calendar: title, prize, deadline, themes, registrations, and organizer — in seconds.

***

### Why use this actor?

Devpost has no public API. This actor scrapes the public listing pages and returns clean, structured JSON — ready for dashboards, Notion databases, Airtable, Slack alerts, or LLM pipelines.

| Feature | Details |
|---------|---------|
| Data source | Devpost — 100K+ projects, 500K+ members |
| Filters | Status, keyword, online-only, prize size |
| Sort options | Deadline (soonest first), prize amount, recently added |
| Max results | Up to 500 hackathons per run |
| Output | Structured JSON (title, prize, dates, themes, registrations) |
| Use case | Hackathon calendar, competition monitor, talent research |

***

### Use cases

- **Developers** — Find the best hackathons to enter this week or month, filtered by tech stack (AI, Web3, Climate, Health)
- **Recruiters & HR** — Monitor high-attendance hackathons to source engineering talent
- **Hackathon aggregators** — Build a curated hackathon calendar or newsletter (similar to Devfolio, MLH, devpost.com/hackathons)
- **LLM & AI research pipelines** — Feed hackathon descriptions into AI models for trend detection or opportunity scoring
- **Community managers** — Alert your Discord or Slack channel when new AI/ML hackathons are listed
- **Market research** — Track prize amounts and themes to understand what companies are building toward
- **Students** — Find beginner-friendly hackathons or those with travel stipends

***

### Output fields

```json
{
  "title": "AI Innovation Challenge 2026",
  "url": "https://ai-challenge-2026.devpost.com",
  "organization": "TechCorp",
  "status": "open",
  "location": "Online",
  "online": true,
  "dates": "Aug 22 – Sep 30, 2026",
  "time_left": "32 days left",
  "prize_usd": 50000,
  "cash_prizes": 3,
  "other_prizes": 5,
  "registrations": 1842,
  "themes": ["AI/ML", "Open Innovation", "Beginner Friendly"],
  "featured": true,
  "invite_only": false
}
```

| Field | Description |
|-------|-------------|
| `title` | Hackathon name |
| `url` | Direct Devpost URL |
| `organization` | Organizer / sponsor name |
| `status` | `open` or `upcoming` |
| `location` | Location string (or "Online") |
| `online` | `true` if fully virtual |
| `dates` | Submission window (human-readable) |
| `time_left` | Countdown: "3 days left" / "Starts in 5 days" |
| `prize_usd` | Total prize pool in USD |
| `cash_prizes` | Number of cash prize tiers |
| `other_prizes` | Number of non-cash awards (hardware, credits, etc.) |
| `registrations` | Number of registered participants |
| `themes` | Devpost category tags (AI/ML, Web3, Climate, etc.) |
| `featured` | Whether Devpost has featured/highlighted this event |
| `invite_only` | Whether registration requires an invite |

***

### Input options

| Parameter | Default | Description |
|-----------|---------|-------------|
| `status` | `["open", "upcoming"]` | Filter by status: `"open"`, `"upcoming"`, or `"ended"` |
| `orderBy` | `"deadline"` | Sort: `"deadline"`, `"prize_amount"`, `"recently_added"` |
| `search` | `""` | Keyword filter — e.g. `"AI"`, `"web3"`, `"climate"`, `"health"` |
| `onlineOnly` | `false` | Return only virtual / remote hackathons |
| `minPrize` | `0` | Minimum prize pool in USD (0 = no filter) |
| `limit` | `100` | Max hackathons to return (1–500) |

***

### Example queries

**Find high-prize AI hackathons sorted by prize:**

```json
{
  "search": "AI",
  "orderBy": "prize_amount",
  "minPrize": 5000,
  "limit": 20
}
```

**All open online hackathons — sorted by deadline (most urgent first):**

```json
{
  "status": ["open"],
  "onlineOnly": true,
  "orderBy": "deadline",
  "limit": 50
}
```

**Weekly monitor — catch new listings before they get crowded:**

```json
{
  "orderBy": "recently_added",
  "limit": 30
}
```

Schedule this weekly in Apify Scheduler to get a fresh list every Monday.

**Web3 / crypto hackathons only:**

```json
{
  "search": "web3",
  "status": ["open", "upcoming"],
  "orderBy": "prize_amount"
}
```

**Beginner-friendly hackathons with prizes:**

```json
{
  "search": "beginner",
  "minPrize": 500,
  "onlineOnly": true
}
```

***

### Integration examples

#### Slack alert for new high-prize hackathons

Use Apify Scheduler + Webhook to post a message to Slack every Monday:

```bash
## Run via API and post results to a webhook
curl -X POST "https://api.apify.com/v2/acts/gochujang~hackathon-calendar-tracker/runs?token=YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"orderBy":"recently_added","minPrize":1000,"limit":10}'
```

#### Python — build a hackathon digest

```python
import apify_client

client = apify_client.ApifyClient("YOUR_API_TOKEN")
run = client.actor("gochujang/hackathon-calendar-tracker").call(
    run_input={
        "status": ["open"],
        "orderBy": "deadline",
        "onlineOnly": True,
        "minPrize": 1000,
        "limit": 50,
    }
)
hackathons = list(client.dataset(run["defaultDatasetId"]).iterate_items())
for h in hackathons:
    print(f"{h['title']} — ${h['prize_usd']:,} — {h['time_left']}")
```

#### Airtable / Notion pipeline

Export the dataset as CSV from the Apify platform, or use the Apify→Zapier integration to push each hackathon record directly into Airtable or Notion.

***

### Pricing

| Usage | Cost |
|-------|------|
| Run start | $0.005 (flat) |
| Per hackathon returned | $0.005 |
| First 3 per run | Free |
| 100 hackathons | ~$0.505 |
| 500 hackathons | ~$2.505 |

Running weekly to monitor 100 hackathons = **~$2/month**.

***

### Notes

- Data is scraped from the Devpost public listing pages — no Devpost account required
- Prize amounts are parsed from Devpost's structured markup; some prizes listed as "non-cash" (hardware, cloud credits) may show as `$0`
- `time_left` reflects how much time remains for submissions (for open hackathons) or when the event starts (for upcoming)
- Devpost typically lists 200–500 active hackathons at any time
- Results are deduplicated by URL within a single run
- For the most current data, run immediately before use (Devpost updates listings in real time)

**Keywords:** hackathon tracker, Devpost, MLH, developer events, crypto hackathon, Web3 hackathon, AI hackathon, prize calendar, hackathon scraper

# Actor input Schema

## `status` (type: `array`):

Hackathon status to include. Defaults to open and upcoming.

## `orderBy` (type: `string`):

How to sort results.

## `search` (type: `string`):

Filter by keyword (e.g. 'AI', 'web3', 'climate').

## `onlineOnly` (type: `boolean`):

Return only online/virtual hackathons.

## `minPrize` (type: `integer`):

Only return hackathons with total prize >= this value. 0 = no filter.

## `limit` (type: `integer`):

Maximum number of hackathons to return (1–500).

## Actor input object example

```json
{
  "status": [
    "open",
    "upcoming"
  ],
  "orderBy": "deadline",
  "search": "",
  "onlineOnly": false,
  "minPrize": 0,
  "limit": 100
}
```

# Actor output Schema

## `dataset` (type: `string`):

No description

## `summary` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {};

// Run the Actor and wait for it to finish
const run = await client.actor("gochujang/hackathon-calendar-tracker").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {}

# Run the Actor and wait for it to finish
run = client.actor("gochujang/hackathon-calendar-tracker").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{}' |
apify call gochujang/hackathon-calendar-tracker --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,gochujang/hackathon-calendar-tracker"
        }
    }
}

```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/u6EykeeED8Pcxw4QX/builds/aS202TIoVFmGT2v8B/openapi.json
