Paste the first cURL command.
Choose cURL as the input type and paste the command for the Before side.
Open DiffFind
DiffFind FEATURES
Paste two cURL commands and DiffFind runs both requests and compares the API responses they return. Copy a command from your terminal or your browser’s developer tools, keep the method, headers and body, and see exactly what changed, with optional AI analysis of what the changes mean.
Choose cURL as the input type and paste the command for the Before side.
Add the command for the After side. It can use a different URL, headers, parameters or payload.
DiffFind sends each request and collects the responses.
Inspect every addition, removal and changed value between the two responses.
Ask for an explanation of the meaning and impact of the changes.
This example compares two requests to a public test API, JSONPlaceholder. The only difference between the commands is the item ID. The responses are simplified.
$ curl -X GET "https://jsonplaceholder.typicode.com/todos/1" \
-H "Accept: application/json"
{
"userId": 1,
"id": 1,
"title": "delectus aut autem",
"completed": false
}$ curl -X GET "https://jsonplaceholder.typicode.com/todos/4" \
-H "Accept: application/json"
{
"userId": 1,
"id": 4,
"title": "et porro tempora",
"completed": true
}id changed from 1 to 4.title changed from "delectus aut autem" to "et porro tempora".completed changed from false to true.userId is unchanged.You can load this example into the form above with Load example.
The most useful cURL comparisons keep the endpoint the same and change one part of the request. DiffFind runs both commands and shows how the responses differ, so you can see what a header, a query parameter or a request body actually changes.
Compare the same call with a different Accept-Language, Authorization role or API version header to see how the response changes.
Change ?page=1 to ?page=2, add a filter, or switch an environment flag and review exactly which fields move.
Send two versions of a JSON payload to a POST or PATCH endpoint and compare what the API returns for each.
$ curl "https://api.example.com/v1/plans/pro" \
-H "Accept-Language: en"
{
"id": "pro",
"name": "Pro plan",
"currency": "USD",
"price": 29
}
$ curl "https://api.example.com/v1/plans/pro" \
-H "Accept-Language: de"
{
"id": "pro",
"name": "Pro-Tarif",
"currency": "EUR",
"price": 27
}
The comparison reports name, currency and price as changed and id as unchanged. This API and its responses are made up for illustration.
Lexical comparison identifies exact additions, removals and changed values between the two responses. It is deterministic: the same inputs always produce the same result.
Semantic analysis explains what the changes mean, for example whether a changed value is cosmetic or likely to affect behavior. Read more about semantic comparison.
The deterministic comparison remains the source of truth. AI analysis is optional and supplements the exact diff; it never replaces it.
AuthorizationcURL comparison supports complete HTTP request definitions. If you only need to compare two URLs, use URL comparison instead. To automate comparisons, see the REST API and API comparison.
A quick walkthrough of comparing two cURL requests and their API responses.
Paste the first cURL command into the Before side and the second into the After side, then load and compare. DiffFind sends both requests and shows every difference between the two responses.
Yes. When a request returns JSON, DiffFind reports additions, removals and changed values so you can see exactly what differs between the two responses.
Lexical comparison finds the exact differences between two responses: what was added, removed or changed. Semantic analysis is an optional AI step that explains what those changes mean and how much they matter.
Yes. Each cURL command keeps its own method, headers and request body, so you can compare requests that differ in headers, parameters or payloads.
Yes. Keep the URL the same and change one header, one query parameter or part of the body. DiffFind runs both requests and shows which fields in the responses changed as a result.
Yes. Paste one cURL command for your development endpoint and one for production, and compare the responses side by side.
No. The lexical comparison is deterministic and works without AI. AI semantic analysis is optional and supplements the exact diff.
Working with saved payloads? Try JSON Compare or XML Compare, or compare live endpoints with URL Compare. For meaning rather than exact wording, see Semantic Diff. Prefer to compare on your computer? DiffFind Desktop for macOS and Windows runs locally and is free to use; see the download options. You can also open the DiffFind application directly.
TRY IT WITH YOUR OWN cURL COMMANDS