# Artifacts (beta) internal error report template Use this when Cloudflare Artifacts binding calls fail with `internal error; reference = `. The site admin page at `/admin/artifacts` shows failure rates by operation and the reference ids, and its **Copy Cloudflare report** button fills in this template. ## Where the data comes from - `artifacts_call_stats`: hourly call and failure counts per operation (approximate, flushed from each isolate at most every 30 seconds). - `artifacts_failures`: one row per untyped failure that survived every retry, with its reference id (kept for 30 days). To query D1 directly: ```sql SELECT operation, SUM(calls) AS calls, SUM(failures) AS failures, ROUND(100.0 * SUM(failures) / MAX(SUM(calls), 1), 2) AS failure_pct FROM artifacts_call_stats WHERE hour >= (strftime('%s', 'now') - 86400) * 1000 GROUP BY operation ORDER BY failures DESC; SELECT datetime(created_at / 1000, 'unixepoch') AS at, operation, reference, target, attempts FROM artifacts_failures ORDER BY created_at DESC LIMIT 50; ``` ## Template ```text Subject: Artifacts (beta) internal errors: "internal error; reference = …" Product: Cloudflare Artifacts (beta), Workers binding Account / namespace: / Window: to Failure rate by operation (untyped failures / calls): - : / (%) Reference ids (most recent first): - attempts= Observed behaviour: the binding call rejects with an untyped error (no ArtifactsError code) whose message is "internal error; reference = ". Idempotent reads are retried up to 3 times with jittered backoff; the listed failures persisted through every attempt. Expected: a typed ArtifactsError code, or success. Impact: Reproduction: ```