# CatchAll \[Job] Submit Only (returns jobId) (`newscatcher/catchall-create-job`) Actor

Submit a CatchAll job and return the job ID. Does not poll or pull results.

- **URL**: https://apify.com/newscatcher/catchall-create-job.md
- **Developed by:** [Newscatcher-CatchAll](https://apify.com/newscatcher) (community)
- **Categories:** AI, News, Automation
- **Stats:** 1 total users, 1 monthly users, 0.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

$0.00/month + usage

To use this Actor, you pay a monthly rental fee to the developer. The rent is subtracted from your prepaid usage every month after the free trial period. You also pay for the Apify platform usage, which gets cheaper the higher Apify subscription plan you have.

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

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

## CatchAll Create Job — submit a job without polling

CatchAll Create Job submits a search query to the CatchAll API and returns a `job_id` immediately. Unlike the main [CatchAll](https://apify.com/newscatcher/catchall) Actor, it does not wait for the job to complete or fetch results. This gives you full control over the job lifecycle in custom workflows.

This Actor maps to the [`POST /catchAll/submit`](https://www.newscatcherapi.com/docs/web-search-api/api-reference/jobs/create-job) endpoint.

### When to use this Actor

- **Build custom pipelines.** Submit a job, then chain [CatchAll Get Job Status](https://apify.com/newscatcher/catchall-get-job-status) and [CatchAll Pull Results](https://apify.com/newscatcher/catchall-pull-results) using Apify integrations.
- **Submit multiple jobs in parallel.** Start several jobs at once and poll their statuses independently.
- **Add logic between steps.** Insert custom processing, notifications, or conditional checks between job submission and result retrieval.

### Input

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `apiKey` | String | Yes | Your CatchAll API key |
| `query` | String | Yes | Plain-text question describing what to find |
| `context` | String | No | Extra instructions for extraction |
| `limit` | Integer | No | Maximum records to process |
| `start_date` | String | No | Start date/time for the search window (ISO 8601 format) |
| `end_date` | String | No | End date/time for the search window (ISO 8601 format) |
| `validators` | String | No | JSON array of validator objects (paste as text) |
| `enrichments` | String | No | JSON array of enrichment objects (paste as text) |

#### Input example

```json
{
  "apiKey": "YOUR_CATCHALL_API_KEY",
  "query": "Series B funding rounds for SaaS startups",
  "context": "Focus on funding amount and company name",
  "limit": 10
}
```

#### Input example with date range and custom enrichments

```json
{
  "apiKey": "YOUR_CATCHALL_API_KEY",
  "query": "Series B funding rounds for SaaS startups",
  "context": "Focus on funding amount and company name",
  "limit": 10,
  "start_date": "2026-01-01T00:00:00Z",
  "end_date": "2026-01-31T00:00:00Z",
  "enrichments": "[{\"name\":\"investee_company\",\"description\":\"Name of the funded startup\",\"type\":\"company\"},{\"name\":\"funding_amount\",\"description\":\"Amount raised in USD\",\"type\":\"number\"}]"
}
```

### Output

The Actor returns the `job_id` in the default Dataset. Use this ID with other CatchAll utility Actors to track progress and retrieve results.

#### Output example

```json
{
  "job_id": "5f0c9087-85cb-4917-b3c7-e5a5eff73a0c"
}
```

### Typical workflow

1. **Submit** — Run CatchAll Create Job to get a `job_id`.
2. **Poll** — Use [CatchAll Get Job Status](https://apify.com/newscatcher/catchall-get-job-status) to check progress (poll every 30–60 seconds; jobs typically take 10–15 minutes).
3. **Retrieve** — When the status is `completed`, run [CatchAll Pull Results](https://apify.com/newscatcher/catchall-pull-results) to get all records.
4. **Expand (optional)** — Use [CatchAll Continue](https://apify.com/newscatcher/catchall-continue) to process more records from the same job.

Use Apify's [Actor integrations](https://docs.apify.com/platform/integrations/actors) to chain these steps automatically.

### Other CatchAll Actors

| Actor | Description |
|-------|-------------|
| [CatchAll](https://apify.com/newscatcher/catchall) | End-to-end job: submit, poll, and retrieve results |
| [CatchAll Initialize](https://apify.com/newscatcher/catchall-initialize) | Preview suggested validators and enrichments |
| [CatchAll Get Job Status](https://apify.com/newscatcher/catchall-get-job-status) | Check job progress |
| [CatchAll Pull Results](https://apify.com/newscatcher/catchall-pull-results) | Retrieve records from a completed job |

For the full list, visit the [Newscatcher](https://apify.com/newscatcher) organization page.

### Resources

- [CatchAll documentation](https://www.newscatcherapi.com/docs/web-search-api/get-started/introduction)
- [Jobs guide](https://www.newscatcherapi.com/docs/web-search-api/guides-and-concepts/jobs)
- [Write effective queries](https://www.newscatcherapi.com/docs/web-search-api/how-to/write-effective-queries)

# Actor input Schema

## `apiKey` (type: `string`):

Your CatchAll API key (sent as x-api-key header).

## `query` (type: `string`):

Natural-language question. Keywords and search queries are extracted automatically.

## `schema` (type: `string`):

Advanced: custom JSON schema string that overrides the default extraction schema. Use POST /initialize to discover a suitable schema.

## `context` (type: `string`):

Additional context to sharpen the search scope (geography, industry, time frame, etc.).

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

Maximum number of validated records to collect. Minimum 10. Defaults to the plan limit. Use POST /continue to raise the limit later.

## `startDate` (type: `string`):

Earliest article date (ISO-8601 or free-text like '2024-01-01'). If start\_date is provided and end\_date is omitted, end\_date defaults to now.

## `endDate` (type: `string`):

Latest article date. Cannot be provided without start\_date.

## `validators` (type: `string`):

Boolean classifiers. Only articles where every validator returns true are counted in valid\_records. Provide at least one item or omit entirely. Provide valid JSON matching OpenAPI schema.

## `enrichments` (type: `string`):

Custom extraction fields added to each result record under enrichments.<name>. Provide at least one item or omit entirely. Provide valid JSON matching OpenAPI schema.

## `mode` (type: `string`):

Processing mode. 'base' runs the full pipeline with clustering and enrichment. 'lite' is faster with no clustering.

## `connectedDatasetIds` (type: `string`):

IDs of datasets whose entities narrow the retrieval scope. When provided, ed\_score\_min defaults to 2 if not specified. Provide valid JSON matching OpenAPI schema.

## `edScoreMin` (type: `integer`):

Minimum entity-domain relevance score (1–10). Only relevant when connected\_dataset\_ids is set. Defaults to 2.

## `edAssociationType` (type: `string`):

Filter events by entity association type. 'event\_associated' keeps only events where the entity is a direct actor. 'mention' keeps only events where the entity is merely referenced. Only relevant when connected\_dataset\_ids is set.

## `webhookIds` (type: `string`):

Webhook IDs to notify when the job completes. Max 5 per job. Provide valid JSON matching OpenAPI schema.

## `projectId` (type: `string`):

Project ID to associate this job with.

## `fetchAllWatchlistNews` (type: `boolean`):

When true, retrieves all news for connected Company Watchlist entities without topic filtering. Requires connected\_dataset\_ids to be set.

## Actor input object example

```json
{
  "mode": "base",
  "fetchAllWatchlistNews": false
}
```

# Actor output Schema

## `createdJob` (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("newscatcher/catchall-create-job").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("newscatcher/catchall-create-job").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 newscatcher/catchall-create-job --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,newscatcher/catchall-create-job"
        }
    }
}

```

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/GfCWIVPhmqx4xonEi/builds/RFkpW9t5jDs9FZeDS/openapi.json
