POST
POST /feedback — Firecrawl API
Firecrawl APISubmit feedback for a v2 job
- Base URL
- https://api.firecrawl.dev/v1
- Auth
- Authorization: Bearer <FIRECRAWL_API_KEY>
- Last verified
- 2026-10-20 · upstream hash matched
Actions Try in browser→
Agents: curl -H "Accept: text/markdown" this URL
→ 233 tokens · Vary: Accept
→ 233 tokens · Vary: Accept
Critical gotchas
The formats field controls the output shape and defaults to ["markdown"]. Omitting it does not return HTML — request ["markdown","html"] explicitly.
/crawl is asynchronous: it returns a job id, and results are collected by polling /crawl/{id} until status is completed.
cURL
curl -X POST 'https://api.firecrawl.dev/v1/feedback' \ -H "Authorization: Bearer $FIRECRAWL_API_KEY" \ -H 'Content-Type: application/json' \ -d '{ "rating": "good", "valuableSources": [ { "url": "https://example.com", "reason": "example-reason" } ], "valuableResults": [ { "source": "web", "position": 0, "reason": "example-reason" } ], "missingContent": [ { "topic": "example-topic", "description": "example-description" } ], "querySuggestions": "example-querysuggestions", "origin": "api", "integration": "example-integration", "endpoint": "search", "jobId": "00000000-0000-4000-8000-000000000000", "issues": [ "example-issues" ], "tags": [ "example-tags" ], "note": "example-note", "url": "https://example.com", "pageNumbers": [ 0 ], "metadata": {}}'
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| rating | body | string | Yes | Request body field rating. |
| valuableSources | body | object[] | No | Request body field valuableSources. |
| valuableResults | body | object[] | No | Results that were useful, each addressed by the `data` group it appears in and its 1-indexed position within that group. Results are returned grouped (`data.web`, `data.images`, `data.news`) and each group is numbered from 1 independently, so `source` is required. List every useful result — unlisted results are treated as not useful. Positions beyond what the group actually returned are ignored. The API stores these as stable search result document IDs for quantitative feedback. |
| missingContent | body | object[] | No | Request body field missingContent. |
| querySuggestions | body | string | No | Request body field querySuggestions. |
| origin | body | string | No | Request body field origin. |
| integration | body | string | No | Request body field integration. |
| endpoint | body | string | Yes | Request body field endpoint. |
| jobId | body | string | Yes | Request body field jobId. |
| issues | body | string[] | No | Request body field issues. |
| tags | body | string[] | No | Request body field tags. |
| note | body | string | No | Request body field note. |
| url | body | string | No | Request body field url. |
| pageNumbers | body | integer[] | No | Request body field pageNumbers. |
| metadata | body | object | No | Small endpoint-specific metadata object. Must be 8KB or smaller; do not include full endpoint results. |
Response 200 OK
{
"success": true,
"feedbackId": "00000000-0000-4000-8000-000000000000",
"creditsRefunded": 0,
"alreadySubmitted": true,
"dailyCapReached": true,
"creditsRefundedToday": 0,
"dailyRefundCap": 0,
"warning": "string"
} Get a free Firecrawl API key → sponsored Affiliate link - we may earn a commission, at no extra cost to you.