Apify Common Errors
Overview
Quick diagnostic reference for the most common Apify errors. Covers Actor run
failures, API errors, proxy problems, anti-bot blocks, and platform-specific
issues. The full per-error catalog — raw signature, cause, diagnosis, and
copy-paste fix for all ten errors — lives in
references/error-reference.md; this file is the
lean triage path that points you there.
Prerequisites
- An Apify API token exported as
APIFY_TOKEN (Console > Settings > Integrations).
- Access to the Apify Console for reading run and build logs.
curl and jq on PATH for the diagnostic commands below; apify CLI optional for build inspection.
Instructions
Work the failure from signal to fix:
- Capture the exact error. Grab the
Status / StatusMessage from the
run, or the ApifyApiError message and HTTP code from the API response.
The raw string is the key you match on.
- Match the signature. Find the matching entry in the table below, then
open references/error-reference.md at that
number for the cause, diagnosis, and fix.
- Diagnose before changing code. For run failures, pull the log via the
API or Console (see the FAILED entry). For auth/rate/payload errors, the
HTTP code already tells you the class — see Error Handling.
- Apply the fix from the reference, re-run, and confirm with the
diagnostic commands.
Error signature → reference
| # |
Error |
Signature to match |
| 1 |
Actor run FAILED |
Status: FAILED / exited with code 1 |
| 2 |
Actor run TIMED-OUT |
Actor timed out after N seconds |
| 3 |
Rate limited |
Rate limit exceeded (429) |
| 4 |
Unauthorized |
Authentication required (401) |
| 5 |
Build failed |
Build failed: npm ERR! |
| 6 |
Proxy connection failed |
502 Bad Gateway / Could not connect to proxy |
| 7 |
Anti-bot block |
status 403 / Captcha detected |
| 8 |
Out of memory |
JavaScript heap out of memory |
| 9 |
Dataset push too large |
Payload too large (413) |
| 10 |
Actor not found |
Actor '…' not found (404) |
Full detail for every row: references/error-reference.md.
Output
Working through this skill yields:
- The identified error class (matched signature + the one of ten catalog entries).
- The root cause and a copy-paste fix (config change, code edit, or token/proxy action).
- A verification command whose output confirms the run recovered (status
SUCCEEDED, valid username, etc.).
Error Handling
| HTTP Code |
Meaning |
Retryable |
Action |
| 400 |
Bad request |
No |
Fix input/params |
| 401 |
Unauthorized |
No |
Check token |
| 403 |
Forbidden |
No |
Check permissions |
| 404 |
Not found |
No |
Verify resource ID |
| 408 |
Timeout |
Yes |
Retry with backoff |
| 413 |
Payload too large |
No |
Reduce batch size |
| 429 |
Rate limited |
Yes |
Auto-retried by client |
| 500+ |
Server error |
Yes |
Auto-retried by client |
Examples
Diagnostic commands for the most common triage steps:
# Check Apify platform status
curl -s https://api.apify.com/v2/health | jq '.'
# Verify your auth (fixes 401 diagnosis)
curl -s -H "Authorization: Bearer $APIFY_TOKEN" \
https://api.apify.com/v2/users/me | jq '.data.username'
# Check installed package versions
npm list apify-client apify crawlee 2>/dev/null
# Get last run status (find why a run FAILED / TIMED-OUT)
curl -s -H "Authorization: Bearer $APIFY_TOKEN" \
"https://api.apify.com/v2/acts/USER~ACTOR/runs?limit=1&desc=true" | \
jq '.data.items[0] | {status, statusMessage, startedAt, finishedAt}'
For the worked fix behind each error — e.g. reading a run log to find a stack
trace, batching dataset pushes under 9MB, or switching to residential proxies to
clear a 403 — see the matching entry in
references/error-reference.md.
Resources
Next Steps
For comprehensive multi-error debugging across a whole Actor project — log
correlation, proxy rotation strategy, and build-cache issues — see the
apify-debug-bundle skill in this pack.
1---2name: apify-common-errors3description: Diagnose and fix common Apify Actor and API errors. Use when an Apify run fails, an API call returns 401/403/404/413/429, a proxy connection drops, an Actor build breaks, or a scrape hits an anti-bot block, and you need the cause plus a copy-paste fix. Trigger with "apify error", "fix apify", "actor failed", "apify not working", "debug apify", "apify 429".4license: MIT5---6# Apify Common Errors
7
8## Overview
9
10Quick diagnostic reference for the most common Apify errors. Covers Actor run
11failures, API errors, proxy problems, anti-bot blocks, and platform-specific
12issues. The full per-error catalog — raw signature, cause, diagnosis, and
13copy-paste fix for all ten errors — lives in
14[references/error-reference.md](references/error-reference.md); this file is the
15lean triage path that points you there.
16
17## Prerequisites
18
19- An Apify API token exported as `APIFY_TOKEN` (Console > Settings > Integrations).
20- Access to the [Apify Console](https://console.apify.com) for reading run and build logs.
21- `curl` and `jq` on PATH for the diagnostic commands below; `apify` CLI optional for build inspection.
22
23## Instructions
24
25Work the failure from signal to fix:
26
271. **Capture the exact error.** Grab the `Status` / `StatusMessage` from the
28 run, or the `ApifyApiError` message and HTTP code from the API response.
29 The raw string is the key you match on.
302. **Match the signature.** Find the matching entry in the table below, then
31 open [references/error-reference.md](references/error-reference.md) at that
32 number for the cause, diagnosis, and fix.
333. **Diagnose before changing code.** For run failures, pull the log via the
34 API or Console (see the FAILED entry). For auth/rate/payload errors, the
35 HTTP code already tells you the class — see [Error Handling](#error-handling).
364. **Apply the fix from the reference,** re-run, and confirm with the
37 [diagnostic commands](#examples).
38
39### Error signature → reference
40
41| # | Error | Signature to match |
42|---|-------|--------------------|
43| 1 | Actor run FAILED | `Status: FAILED` / `exited with code 1` |
44| 2 | Actor run TIMED-OUT | `Actor timed out after N seconds` |
45| 3 | Rate limited | `Rate limit exceeded (429)` |
46| 4 | Unauthorized | `Authentication required (401)` |
47| 5 | Build failed | `Build failed: npm ERR!` |
48| 6 | Proxy connection failed | `502 Bad Gateway` / `Could not connect to proxy` |
49| 7 | Anti-bot block | `status 403` / `Captcha detected` |
50| 8 | Out of memory | `JavaScript heap out of memory` |
51| 9 | Dataset push too large | `Payload too large (413)` |
52| 10 | Actor not found | `Actor '…' not found (404)` |
53
54Full detail for every row: [references/error-reference.md](references/error-reference.md).
55
56## Output
57
58Working through this skill yields:
59
60- The identified error class (matched signature + the one of ten catalog entries).
61- The root cause and a copy-paste fix (config change, code edit, or token/proxy action).
62- A verification command whose output confirms the run recovered (status `SUCCEEDED`, valid `username`, etc.).
63
64## Error Handling
65
66| HTTP Code | Meaning | Retryable | Action |
67|-----------|---------|-----------|--------|
68| 400 | Bad request | No | Fix input/params |
69| 401 | Unauthorized | No | Check token |
70| 403 | Forbidden | No | Check permissions |
71| 404 | Not found | No | Verify resource ID |
72| 408 | Timeout | Yes | Retry with backoff |
73| 413 | Payload too large | No | Reduce batch size |
74| 429 | Rate limited | Yes | Auto-retried by client |
75| 500+ | Server error | Yes | Auto-retried by client |
76
77## Examples
78
79Diagnostic commands for the most common triage steps:
80
81```bash
82# Check Apify platform status
83curl -s https://api.apify.com/v2/health | jq '.'
84
85# Verify your auth (fixes 401 diagnosis)
86curl -s -H "Authorization: Bearer $APIFY_TOKEN" \
87 https://api.apify.com/v2/users/me | jq '.data.username'
88
89# Check installed package versions
90npm list apify-client apify crawlee 2>/dev/null
91
92# Get last run status (find why a run FAILED / TIMED-OUT)
93curl -s -H "Authorization: Bearer $APIFY_TOKEN" \
94 "https://api.apify.com/v2/acts/USER~ACTOR/runs?limit=1&desc=true" | \
95 jq '.data.items[0] | {status, statusMessage, startedAt, finishedAt}'
96```
97
98For the worked fix behind each error — e.g. reading a run log to find a stack
99trace, batching dataset pushes under 9MB, or switching to residential proxies to
100clear a 403 — see the matching entry in
101[references/error-reference.md](references/error-reference.md).
102
103## Resources
104
105- [Apify API Error Codes](https://docs.apify.com/api/v2)
106- [Apify Status Page](https://status.apify.com)
107- [Actor Run Statuses](https://docs.apify.com/platform/actors/running)
108- [Full error catalog (all 10, with fixes)](references/error-reference.md)
109
110## Next Steps
111
112For comprehensive multi-error debugging across a whole Actor project — log
113correlation, proxy rotation strategy, and build-cache issues — see the
114`apify-debug-bundle` skill in this pack.
115</content>