While an agent runs, it version-controls its output artifacts — the structured JSON result as it takes shape, plus any markdown, HTML, text, or screenshot artifacts it produces. Every change emits an artifact.updated trace event referencing the new version by snapshotId. This endpoint fetches the full content of one such snapshot.
What it's for#
- Partial results — preview the agent's structured output before the run finishes. The JSON result artifact (
artifactId: "result") is snapshotted as it grows, so eachsnapshotIdis a point-in-time view of the finaldata. - Rendered artifacts — fetch the content of non-JSON artifacts the agent produced, such as a markdown report or a screenshot of a page it visited.
- Run inspection — pair with the trace to reconstruct exactly how the output evolved over the run.
How it works#
The artifact.updated event's change field tells you how the snapshot relates to the previous one: init (first version), partial, append, modify, or update. Each change gets a new snapshotId — fetch the latest one for the current state, or walk the history to diff versions.
The snapshot field in the response is the artifact content as a string. For json artifacts it is JSON-encoded — parse it before use.
400.Are you an AI agent that needs a Firecrawl API key? See firecrawl.dev/agent-onboarding/SKILL.md for automated onboarding instructions.

