# Tech Events & CFP Calendar Scraper (`taroyamada/tech-events-intelligence`) Actor

Extract upcoming developer conferences, local meetups, and open Call for Papers (CFP) deadlines to build a comprehensive speaking schedule for your DevRel team.

- **URL**: https://apify.com/taroyamada/tech-events-intelligence.md
- **Developed by:** [naoki anzai](https://apify.com/taroyamada) (community)
- **Categories:** Lead generation, Marketing, Developer tools
- **Stats:** 4 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $4.00 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

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

## 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

## Tech Events Calendar API | Conferences + CFP

Developer Relations and engineering-community teams submit topics, regions, and date filters.
The actor collects public conference, meetup, and call-for-papers details and deduplicates overlapping listings.
Each run returns a structured event calendar with dates, locations, topic tags, source URLs, and public submission deadlines.

### Run the next report

- [Track GitHub releases and changelog drift](https://apify.com/taroyamada/github-release-monitor).
- [Monitor product documentation and migration-guide changes](https://apify.com/taroyamada/docs-changelog-drift-monitor).
- [Audit npm package metadata and dependency signals](https://apify.com/taroyamada/npm-package-intelligence).

### Store Quickstart

- Start with `store-input.example.json` for a cheap single-topic first run.
- If that matches your workflow, switch to `store-input.templates.json` and pick one of:
- `Quickstart (Dataset)` for one-topic discovery
- `Multi-topic Scan` for a broader calendar build
- `Webhook Alert` for downstream event routing

### Key Features

- 📅 **Multi-topic search** — Search across JavaScript, Python, AI, DevOps, and 20+ topics
- 🔄 **Automatic deduplication** — Events appearing in multiple topics are merged
- 🌍 **Global coverage** — Conferences from all countries, including online events
- 📝 **CFP tracking** — Call-for-papers URLs and deadlines included
- 📊 **Sorted by date** — Clean chronological listing
- 🏷️ **Topic tagging** — Each event tagged with all relevant topics

### Use Cases

| Who | Why |
|-----|-----|
| Developer advocates | Find conferences to speak at or sponsor |
| DevRel teams | Plan conference attendance calendar |
| Recruiters | Discover events where target developers gather |
| Community managers | Track events in their technology ecosystem |

### Input

| Field | Type | Default | Description |
|-------|------|---------|-------------|
| topics | array | prefilled | Topics to search for (e.g. \['javascript','ai','devops']). |
| year | integer | `2026` | Year to search for events. |
| delivery | string | `"dataset"` | How to deliver results. 'dataset' saves to Apify Dataset (recommended), 'webhook' sends to a URL. |
| webhookUrl | string | — | Webhook URL to send results to (only used when delivery is 'webhook'). Works with Slack, Discord, or any HTTP endpoint. |
| dryRun | boolean | `false` | If true, runs without saving results or sending webhooks. Useful for testing. |

#### Input Example

```json
{
  "topics": ["javascript", "python", "ai"],
  "year": 2026
}
```

### Input Examples

#### Example: Single platform

```json
{
  "sources": [
    "papercall.io"
  ],
  "topics": [
    "machine learning"
  ]
}
```

#### Example: Multi-platform monitor

```json
{
  "sources": [
    "papercall.io",
    "sessionize.com"
  ],
  "topics": [
    "security"
  ],
  "deadlineWithinDays": 60
}
```

#### Example: Specific conference URLs

```json
{
  "urls": [
    "https://example-conf.com/cfp"
  ],
  "emitDeadlineAlerts": true
}
```

### Output

| Field | Type | Description |
|-------|------|-------------|
| `meta` | object |  |
| `results` | array |  |
| `results[].name` | string |  |
| `results[].url` | string (url) |  |
| `results[].startDate` | string |  |
| `results[].endDate` | string |  |
| `results[].city` | string |  |
| `results[].country` | string |  |
| `results[].online` | boolean |  |
| `results[].cfpUrl` | string (url) |  |
| `results[].cfpEndDate` | string |  |
| `results[].twitter` | string |  |
| `results[].topics` | array |  |
| `results[].source` | string |  |

#### Output Example

```json
{
  "name": "PyCon US 2026",
  "url": "https://us.pycon.org/2026/",
  "startDate": "2026-05-15",
  "endDate": "2026-05-23",
  "city": "Long Beach",
  "country": "US",
  "online": false,
  "cfpUrl": "https://us.pycon.org/2026/speaking/",
  "cfpEndDate": "2025-12-18",
  "topics": ["python"],
  "source": "confs.tech"
}
```

### API Usage

Run this actor programmatically using the Apify API. Replace `YOUR_API_TOKEN` with your token from [Apify Console → Settings → Integrations](https://console.apify.com/account/integrations).

#### cURL

```bash
curl -X POST "https://api.apify.com/v2/acts/taroyamada~tech-events-intelligence/run-sync-get-dataset-items?token=YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ "topics": ["javascript", "python", "ai"], "year": 2026 }'
```

#### Python

```python
from apify_client import ApifyClient

client = ApifyClient("YOUR_API_TOKEN")
run = client.actor("taroyamada/tech-events-intelligence").call(run_input={
  "topics": ["javascript", "python", "ai"],
  "year": 2026
})

for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)
```

#### JavaScript / Node.js

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

const client = new ApifyClient({ token: 'YOUR_API_TOKEN' });
const run = await client.actor('taroyamada/tech-events-intelligence').call({
  "topics": ["javascript", "python", "ai"],
  "year": 2026
});

const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);
```

### Tips & Limitations

- Run nightly as part of your supply-chain monitoring to catch new vulnerabilities early.
- Pair with `oss-vulnerability-monitor` for CVE coverage layered on top of version tracking.
- For monorepos, run per-package rather than recursing — easier to triage alerts by team owner.
- Use `snapshotKey` to persist between runs and only alert on diffs.
- Webhook delivery supports JSON payloads — pipe into your existing on-call routing.

### FAQ

**Is my build slowed down?**

This actor runs on Apify infrastructure, not your CI runners. No impact on build times.

**What's the freshness of data?**

Depends on the source registry — typically 5–60 minutes behind upstream.

**Can I filter by package ecosystem?**

Yes — most DevOps actors accept an ecosystem or package-manager filter in their input schema.

**Does this work with private registries?**

No — this actor targets public registries (npm, PyPI, crates.io, etc.). Private registries require credential handling that's out of scope.

**Can I integrate with GitHub Actions?**

Yes — call this actor via Apify API inside a workflow job, parse the JSON output, and fail the build on threshold violations.

### Related Actors

DevOps & Tech Intel cluster — explore related Apify tools:

- [🌐 DNS Propagation Checker](https://apify.com/taroyamada/dns-propagation-checker) — Check DNS propagation across 8 global resolvers (Google, Cloudflare, Quad9, OpenDNS).
- [🧹 CSV Data Cleaner](https://apify.com/taroyamada/csv-data-cleaner) — Clean CSV data: trim whitespace, remove empty rows, deduplicate by columns, sort.
- [📦 NPM Package Analyzer](https://apify.com/taroyamada/npm-package-intelligence) — Analyze npm packages: download stats, dependencies, licenses, deprecation status.
- [GitHub Release & Changelog Monitor API](https://apify.com/taroyamada/github-release-monitor) — Track GitHub releases, tags, release notes, and changelog drift over time with one summary-first repository row per repo.
- [Docs & Changelog Drift Monitor API](https://apify.com/taroyamada/docs-changelog-drift-monitor) — Monitor release notes, changelog pages, migration guides, and key docs pages with one summary-first target row per monitored repo, SDK, or product.
- [🔒 OSS Vulnerability Monitor](https://apify.com/taroyamada/oss-vulnerability-monitor) — Monitor open-source packages for known security vulnerabilities using OSV and GitHub Security Advisories.

### Cost

**Pay Per Event**:

- `actor-start`: $0.01 (flat fee per run)
- `dataset-item`: $0.003 per output item

**Example**: 1,000 items = $0.01 + (1,000 × $0.003) = **$3.01**

No subscription required — you only pay for what you use.

### ⭐ Was this helpful?

If this actor saved you time, please [**leave a ★ rating**](https://apify.com/taroyamada/tech-events-intelligence/reviews) on Apify Store. It takes 10 seconds, helps other developers discover it, and keeps updates free.

Bug report or feature request? Open an issue on the [Issues tab](https://apify.com/taroyamada/tech-events-intelligence/issues) of this actor.

# Actor input Schema

## `topics` (type: `array`):

Topics to search for (e.g. \['javascript','ai','devops']).

## `year` (type: `integer`):

Year to search for events.

## `delivery` (type: `string`):

How to deliver results. 'dataset' saves to Apify Dataset (recommended), 'webhook' sends to a URL.

## `webhookUrl` (type: `string`):

Webhook URL to send results to (only used when delivery is 'webhook'). Works with Slack, Discord, or any HTTP endpoint.

## `dryRun` (type: `boolean`):

If true, runs without saving results or sending webhooks. Useful for testing.

## Actor input object example

```json
{
  "topics": [
    "javascript",
    "python",
    "ai"
  ],
  "year": 2026,
  "delivery": "dataset",
  "dryRun": false
}
```

# 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 = {
    "topics": [
        "javascript",
        "python",
        "ai"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("taroyamada/tech-events-intelligence").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 = { "topics": [
        "javascript",
        "python",
        "ai",
    ] }

# Run the Actor and wait for it to finish
run = client.actor("taroyamada/tech-events-intelligence").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 '{
  "topics": [
    "javascript",
    "python",
    "ai"
  ]
}' |
apify call taroyamada/tech-events-intelligence --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,taroyamada/tech-events-intelligence"
        }
    }
}

```

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/ZgQqamBFRCyUOZRQa/builds/37gzjdpzGOaCsQ9Cc/openapi.json
